Come on!不想说那么多了,直接来吧
1:final finally finalize的区别
Final用于声明属性,方法和类 分别表示属性不可变 方法不可覆盖,类不可继承
Finally 是异常处理语句结构的一部分,表示总是执行
Finalize是object类的一个方法,在垃圾回收器执行的时候会调用被回收对象的此方法,
可以覆盖此方法提供垃圾收集时的其他资源回收,例如关闭文件等
2:overload和override的区别。Overloaded的方法是否可以改变返回值的类型?
方法的重写overriding和overloading是java多态性的不同表现,重写overriding是父类与子类之间多态性的一种表现,重载overloading是一个类中多态性的一种表现。如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写(overriding),子类的对象使用这个方法时,将调用子类中的定义,对他而言,父类中的定义如同被“被屏蔽”了,如果在一个类中定义了多个同名的方法,他们或有不同的参数个数或有不同的参数类型,则成为方法的重载(overloading) overloaded的方法是可以改变返回值的类型
3:hashmap和hashtable的区别
Hashmap是hashtable的轻量级实现(非线程安全的实现),他们都完成了map接口,主要区别在于hashmap允许空(null)键值(key),由于非线程安全,效率可能高于hashtable,
Hashmap允许将null作为一个entry的key或者value,而hashtable不允许,hashmap把hashmap的contians方法去掉了,改成containsvalue和containsKey,因为contains方法容易让人引起误解
4:GC是什么? 为什么要有GC?
GC 是垃圾收集的意思(Gabage Collection),内存处理是编程人员容易出现问题的地方,
忘记或者错误的内存回收会导致程序或系统的不稳定甚至崩溃,Java 提供的GC 功能可以自
动监测对象是否超过作用域从而达到自动回收内存的目的,Java 语言没有提供释放已分配内
存的显示操作方法。
5:接口是否可继承接口? 抽象类是否可实现(implements)接口? 抽象类是否可继承实体类
(concrete class)?
接口可以继承接口。抽象类可以实现(implements)接口,抽象类是否可继承实体类,但
前提是实体类必须有明确的构造函数。
6:servlet的生命周期
web 容器加载servlet,生命周期开始。通过调用servlet 的init()方法进行servlet 的初始
化。通过调用service()方法实现,根据请求的不同调用不同的do***()方法。结束服务,web
容器调用servlet 的destroy()方法。