Java面向对象有哪些特征?
A:封装、继承、多态。
静态成员类、非静态成员类有什么区别?什么是匿名内部类?
A:静态成员类相当于外部类的静态成员,是外部类在加载的时候进行初始化,非静态成员类相当于外部类的普通成员,当外部类创建对象的时候才会初始化。匿名内部一般都是在方法里面直接通过new ClassName(){};形式的类。比如我们new Thread(new Runnable(){}).start();就用到了匿名内部类。
Q:abstract class 和 interface有什么区别?
A:前者是抽象类,可以有抽象方法,也可以没有。后者是接口,只能有抽象方法。他们都不能创建对象,需要被继承。
Q:ArrayList是不是线程安全的?如果不是,如何是ArrayList成为线程安全的?
A:不安全的。可以使用Collections.synchronizedList(list)将list变为线程安全的。
Q:是否可以继承String类?
A:不可以,因为String类是final类。为啥不解释了吧。 |