天天看点

java面试题_招银科技一面_java面经汇总

题目来自牛客,  题的答案都是我个人理解的或网上的参考,仅仅只作为复习用.因个人水平有限,不合理的地方请多多指正.

自我介绍,着重说自己的优点

略   (是不是有初高中课后习题的那种感觉,(* ̄︶ ̄))

接口和抽象类区别,他俩的使用场景是什么

1、接口可以被多重implement*,抽象类只能被单一extends 。  

2、接口只有定义,抽象类可以有定义和实现 。  

3、接口的字段定义默认为:public static final, 抽象类字段默认是 friendly 型,其值可以在子类中重新定义,也可以重新赋值。 

4、接口没有构造方法,抽象类可以有构造方法。

Array和ArrayList区别,扩容是几倍?

ArrayList 底层是也是数组.ArrayList当容量不够时,会自己进行扩容.

ArrayList 默认初始容量大小为 10; 默认将扩容至原来容量的 1.5 倍。

深拷贝浅拷贝区别

深拷贝和浅拷贝最根本的区别在于是否真正获取一个对象的复制实体,而不是引用。      

假设B复制了A,修改A的时候,看B是否发生变化:

如果B跟着也变了,说明是浅拷贝,拿人手短!(修改堆内存中的同一个值)

如果B没有改变,说明是深拷贝,自食其力!(修改堆内存中的不同的值)

算法: 删除升序链表中重复的元素

第二个算法题说说思路,无序的链表,如何删除重复的?复杂度是多少?

(这个面试也太容易了吧,羡慕.......)