java实习面试题(阿里一面)
1.抽象类和接口的不同点:
抽象类可以有构造函数,接口中不能有构造函数;
抽象类中可以有普通成员变量,但是接口中不能有普通成员变量;
抽象类中可以包含非抽象的普通方法,但是接口中必须是抽象方法;(jdk1.8接口中可以有非抽象方法,但是必须使用default修饰)
接口中所有修饰符必须是public,但是抽象类中没有这个要求;
抽象类和接口中都可以有静态成员变量,但是接口中是public
一个类可以实现多个接口,但是只能实现一个类
2.接口中可以声明变量吗
可以,public static final
3.静态方法能调用非静态方法吗?为什么
不能。静态是随着类加载而而加载的,而非静态是属于对象的,对象存在才能存在。而静态是优先于对象存在的,所以静态去调用非静态,此时非静态还不存在。
4.Synchronizd修饰静态方法和非静态方法上有什么区别(锁)
synchronizd修饰静态方法,锁是类.Class对象,而修饰非静态方法,锁是本类对象this
5.错误处理机制。error和exception区别。非检查异常和检查异常的区别
error是系统级的错误,不用程序员自己处理。exception表示需要捕获或者处理的异常,是程序设计的瑕疵或者是外在输入导致的问题,是程序必须要处理的。
运行时异常表示让程序无法恢复的异常,可能是执行了错误的操作,建议终止程序,编译器不检查这些异常;
受检查异常表示程序可以处理的异常,也就是程序可以修复。
6.try-catch-finally。可不可以没有catch,finally语句会不会执行。
可以没有catch,因为可以捕获异常但是不做处理。finally语句是会执行的,还会覆盖前面的return。
7.内存管理机制。垃圾回收机制回收哪部分内存
堆和方法区
8.新生代中对象被老年代中对象引用,怎么解决。
这题没有听明白。
9.HashMap,hsah算法。为什么。
10.hashmap底层数据结构。红黑树引进解决什么问题。什么情况下转换成红黑树。会不会再退化成链表。
11.hashmap线程安全吗。举例子说哪种情况会出现什么问题。
fail-fast
扩容时。https://www.cnblogs.com/qiumingcheng/p/5259892.html
12.map实现数据怎么存进去怎么取出来
13.volatile。
volatile修饰时,赋值时,还是会在工作内存中保存副本,只是会立即刷新,并通知其他线程,其他线程如果工作内存中有该变量的副本,那么会放弃该副本,重新从主存中获取。
14.乐观锁和悲观锁,分布式锁。线程池。TreadLocal
15.类加载器的模型。
16.999模8
999&7
17.多数据中找出最大的k个(top k)。
首先读入k个数,构建k个元素的最小堆,然后将剩下的元素跟堆顶元素(最小元素)作比较,如果比最小的数小,则继续读取后续元素,如果比堆顶元素大,则将该元素替换堆顶元素,并重新调整为最小堆。这样一直到最后,堆中就是最大的k个元素。
18.Spring配置bean的方式
xml配置:使用无参构造器创建,使用静态工厂创建,使用实例工厂创建。http://www.cnblogs.com/xiaolovewei/p/7927698.html
注解配置
19.怎么样在注解中配置一个bean。
@component
@Service
@Controller
@Repository
20.引用bean,该bean有多个实例。
@Autowired
@Resource
@Scope()
21.Spring的设计模式。
22.动态代理有几种,区别。
23.cglib能不能代理String类。
java实习面试题(阿里一面)的更多相关文章
- 100道Java高频面试题(阿里面试官整理)
我分享文章的时候,有个读者回复说他去年就关注了我的微信公众号,打算看完我的所有文章,然后去面试,结果我后来很长时间不更新了...所以为了弥补一直等我的娃儿们,给大家的金三银四准备了100道花时间准备的 ...
- 2019阿里天猫团队Java高级工程师面试题之第二面
2019阿里天猫团队Java高级工程师面试题之第一面 2019阿里天猫团队Java高级工程师面试题之第三面 1.Tomcat的基本架构是什么? https://blog.csdn.net/xlgen1 ...
- 2019阿里天猫团队Java高级工程师面试题之第三面
2019阿里天猫团队Java高级工程师面试题之第一面 2019阿里天猫团队Java高级工程师面试题之第二面 1.说说MySQL的锁并发?加锁的机制是什么? https://www.cnblogs.co ...
- 2019阿里天猫团队Java高级工程师面试题之第一面
2019阿里天猫团队Java高级工程师面试题之第二面 2019阿里天猫团队Java高级工程师面试题之第三面 1.五分钟自我介绍,说说自己的擅长及拿手的技术 自我介绍是为了考察面试者的语言表达和总结概括 ...
- 剑指Offer——京东实习笔试题汇总
剑指Offer--京东实习笔试题汇总 编程题1 题目的详细信息已经记不住,只能大致描述一下,就是求最有价值的的委托信息. n.s.B.S其中n代表委托信息,s要求的最有价值的委托信息的个数,B代表买入 ...
- 广州三本找Java实习经历
前言 只有光头才能变强 这阵子跑去面试Java实习生啦~~~我来简单介绍一下背景吧. 广州三本大三在读,在广州找实习.大学开始接触编程,一个非常平庸的人. 在学习编程时,跟我类似的人应该会有一个疑问: ...
- Java 200+ 面试题补充② Netty 模块
让我们每天都能看到自己的进步.老王带你打造最全的 Java 面试清单,认真把一件事做到最好. 本文是前文<Java 最常见的 200+ 面试题>的第二个补充模块,第一模块为:<Jav ...
- 从零基础到拿到网易Java实习offer,谈谈我的学习经验
微信公众号[程序员江湖] 作者黄小斜,斜杠青年,某985硕士,阿里 Java 研发工程师,于 2018 年秋招拿到 BAT 头条.网易.滴滴等 8 个大厂 offer,目前致力于分享这几年的学习经验. ...
- Java工程师笔试题整理[校招篇]
Java工程师笔试题整理[校招篇] 隔着两个月即将开始校招了.你是不是也想借着这个机会崭露头角,拿到某些大厂的offer,赢取白富美.走上人生巅峰?当然如果你还没能打下Java基础,一定要先打 ...
随机推荐
- 4.QT中进程操作,线程操作
QT中的线程操作 T19Process.pro SOURCES += \ main.cpp CONFIG += C++11 main.cpp #include <QCoreApplicat ...
- 你不可不知的Eclipse快捷键
我们都知道Eclipse是一个深受广大程序员喜爱的编译器,其插件机制更是让人拜服.它之所以这么被人喜爱,除了这些,最重要的是它丰富的快捷键.那么今天,我就来分享一下我平时经常使用的一些快捷键. Ctr ...
- ubuntu中安装samba
为了方便的和Windows之间进行交互,samba必不可少. 当然,他的安装使用也很简单: 安装: sudo apt-get install samba sudo apt-get install sm ...
- UNIX网络编程——带外数据
许多传输层有带外数据的概念,它有时也称为经加速数据.其想法是一个连接的某端发生了重要的事情,而且该端希望迅速通告其对端.这里"迅速"意味着这种通知应该在已排队等待发送的任何&quo ...
- Android之Gallery和Spinner-Android学习之旅(二十九)
Spinner简介 spinner是竖直方向展开一个列表供选择.和gallery都是继承了AbsSpinner,AbsSpinner继承了AdapterView,因此AdaptyerView的属性都可 ...
- ubuntu 中 eclipse 的菜单栏 显示问题
在新版ubuntu中装eclipse,很多人会遇到eclipse打开之后没有菜单栏, 其实就是缺一个环境变量UBUNTU_MENUPROXY. 在/etc/profile 里面新建这个变量并且把值写成 ...
- java开源项目之IQQ学习记录之项目环境搭建与启动
本文链接地址:http://blog.csdn.net/sushengmiyan/article/details/18779727 作者:sushengmiyan 现在就码字说说今天晚上搞定的一个项目 ...
- javascript setinterval 正确的语法
前几天我用setinterval 写了一个小程序,这个setinterval是用来干什么的我就不解释了. 写的方法在其它的浏览器里都能用,后来测试组的同事拿去一测就出了问题.因为她们爱用360,还有I ...
- 网站开发进阶(三十二)HTML5之FileReader的使用
HTML5之FileReader的使用 HTML5定义了FileReader作为文件API的重要成员用于读取文件,根据W3C的定义,FileReader接口提供了读取文件的方法和包含读取结果的事件模型 ...
- 粒子系统属性Life,发射速率和总数的关系
提示,粒子系统的life,发射速率以及总粒子数是相互影响的. 如果你要发射器射出粒子流然后停顿一会,你将简单的必须确保lifetime和发射速率相匹配以至于在发射出的粒子达到粒子总数之前一些粒子是活跃 ...