葵花宝典和九阴真经面试题知识点总结
本文总结了葵花宝典和九阴真经面试题中的关键知识点,涵盖面向对象编程、Java 基础、异常处理、Servlet 生命周期、集合框架、EJB 等多个方面,为刚毕业的大学生提供了有价值的参考。
面向对象编程
* 抽象:忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象包括过程抽象和数据抽象。
* 继承:继承是一种联结类的层次模型,并且允许和鼓励类的重用,提供了一种明确表述共性的方法。
* 封装:封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。
* 多态性:多态性是指允许不同类的对象对同一消息作出响应,包括参数化多态性和包含多态性。
Java 基础
* String 不是基本数据类型,Java.lang.String 类是 final 类型的,因此不可以继承这个类、不能修改这个类。
* int 和 Integer 的区别:Int 是 Java 的原始数据类型,Integer 是 Java 为 int 提供的封装类。
* String 和 StringBuffer 的区别:String 类提供了数值不可改变的字符串,而 StringBuffer 类提供的字符串可以进行修改。
异常处理
* 运行时异常:表示虚拟机的通常操作中可能遇到的异常,是一种常见运行错误。Java 编译器要求方法必须声明抛出可能发生的非运行时异常,但是并不要求必须声明抛出未被捕获的运行时异常。
Servlet 生命周期
* Servlet 生命周期包括 init、service 和 destroy 三个阶段,service 方法自动派遣运行与请求对应的 doXXX 方法。
集合框架
* ArrayList、Vector 和 LinkedList 的存储性能和特性:ArrayList 和 Vector 都是使用数组方式存储数据,而 LinkedList 使用双向链表实现存储,每种集合框架都有其特点和缺点。
EJB
* EJB 是基于 Java 技术实现的,提供了一种分布式对象计算模型。
* SessionBean 和 EntityBean 的区别:SessionBean 是一种短期存在的对象,EntityBean 是一种长期存在的对象,都是 EJB 的组件之一。
* StatefulBean 和 StatelessBean 的区别:StatefulBean 是一种保持状态的 Bean,StatelessBean 是一种不保持状态的 Bean,都是 SessionBean 的类型之一。