1.ArrayList和vector区别
ArrayList有线程安全问题,效率相对高,Vector是线程安全的,效率相对低
当存储空间不足的时候ArrayList默认增长为0.5倍,而Vector默认增长1倍
Vector可以设置容量增长的参数,ArrayList不行
2.说一下面向对象的几大特征
封装,字段私有化,只能通过规定的方法访问
继承,子类拥有父类非 private 的属性、方法,复用性高,是多态的前提,只能是单继承
多态,父类型引用指向子类型实例,前提是继承(实现)并且有方法覆写
3.接口和抽象类
相同:都不能实例化,子类或者实现类都只有实现了方法才可以实例化
不同:
接口用interface,抽象类用abstract
接口只能有方法的定义不能有实现,而抽象类可以有定义和实现
接口可以多实现,类只能单继承
接口的成员变量被public static final修饰,必须赋值,且不能更改,抽象类默认default,可以重新赋值
4.String c = “A”+new String(“B”) 在内存开辟几个空间
四个
5.Equals和==的区别
Equals比较的是值
==比较的是地址