面试111

索引    线程池(哪些场景用到线程池)有哪些参数    dubbo部署   锁   单例模式() 线程安全吗   项目部署   JVM   kafka用到哪些地方   aop原理  springboot自动配置原理

1、ArrayList和LinkedList的区别

ArrayList是基于索引的数据接口,底层是数组,可以以O(1)的时间复杂度对元素进行随机访问;LinkedList以元素列表的形式存储它的数据,每一个元素都和他的前一个和后一个连接在一起,查找元素的时间复杂度是0(n)。

add():往尾部插入数据,ArrayList有个数组扩容影响效率,LinkedList每次插入会new一个新的Node对象来存储数据;当数据量很大的时候,new对象的时间大于扩容的时间,那么就会出现ArrayList'的效率比Linkedlist高了。

LinkedList比ArrayList更占内存。

2、类实例化时,父类、子类静态静态字段、静态代码块、构造方法、普通字段、普通顺序(比如new的时候)

父类静态变量-父类静态代码块-子类静态变量-子类静态代码块-父类成员变量-父类构造方法-子类成员变量-子类构造方法

3、HashMap线程不安全、无序 -存储方式、hashcode、扩容、默认容量

数组+链表+红黑树(JDK1.8增加),采用哈希表存储数据

4、TreeMap和LinkedHashMap

TreeMap内部实现是红黑树,无重复的key;可以在new的时候传入自定义的比较器;默认构造器为null时,key必须实现了comparable接口,且key不能为null。

LinkedHashMap增加了时间和空间上的开销,额外维护了一个双向链表来保持迭代顺序。

5、抽象类和接口的区别

都不能直接实例化;抽象类要被子类继承,接口要被实现;接口智能做方法声明,抽象类技能做方法声明,又能做方法实现;接口里的变量只能是公共的静态变量,抽象类中的变量是普通变量;抽象方法必须全部被子类实现,否则这个子类也是个抽象类;抽象方法只能声明,不能实现;抽象类可以没有抽象方法;如果一个类有抽象方法,那么这个类只能是抽象类;接口可继承接口,并可多继承接口,但类只能单根继承。

6、protect

只能被类本身及子类访问。default只能在同一个包中访问。

7、动态代理的几种实现方法,优缺点

8、深拷贝和浅拷贝的区别

9、error和exception的区别,ChekedException和RuntimeExcetion的区别

10、对hashCode和equals方法的理解,以及什么场景下需要重写

equals方法相等,hashCode一定相同;hashCode相同,rquals不一定相同。

Spring:源码解读Spring IOC原理 - ^_TONY_^ - 博客园

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值