中软面试必备知识点:Java与Web技术核心要点

需积分: 9 21 下载量 92 浏览量 更新于2024-08-02 收藏 93KB DOC 举报
"中软面试题,涵盖Java基础、JSP、Servlet和EJB相关知识,包括面向对象特性、线程同步、数据结构、Socket通信、JDBC操作、XML解析、JSP隐含对象、servlet生命周期等核心概念。" 在准备中软的面试时,以下是一些关键知识点的详细解释: 1. **面向对象的三个基本特征**:封装、继承和多态。封装是将数据和操作数据的方法绑定在一起,隐藏内部细节;继承允许子类继承父类的属性和行为,实现代码复用;多态则是指同一种行为可以有不同的表现形式。 2. **方法重载和重写**:重载在同一类中,方法名相同但参数列表不同(参数数量、类型或顺序不同)。重写发生在子类中,方法名、返回类型和参数列表都与父类相同,但子类可以有自己的实现。 3. **接口与内部类、抽象类**:接口定义一组行为规范,不包含具体实现。内部类是嵌套在另一个类中的类,有成员内部类和局部内部类等。抽象类不能实例化,用于定义通用的父类,可以包含抽象方法和非抽象方法。 4. **文件读写**:Java中的FileInputStream和FileOutputStream用于字节流读写,BufferedReader和BufferedWriter用于字符流读写。还有FileReader和FileWriter等简化API。 5. **串行化**:通过实现Serializable接口,对象可以被序列化为字节流,便于持久化存储或网络传输。注意事项包括序列化可能导致安全问题,需注意transient和volatile关键字的使用。 6. **线程**:线程是程序执行的最小单位,基本状态包括新建、就绪、运行、阻塞和死亡。同步方法如synchronized关键字,同步块如synchronized(this)或synchronized(obj),还有Lock接口和ReentrantLock。 7. **数据结构**:栈、队列、链表、数组、集合(List、Set、Map)等,了解它们的特点和应用场景,例如ArrayList和LinkedList的区别,HashMap和TreeMap的实现原理。 8. **Socket通信**:TCP是面向连接的、可靠的协议,UDP是无连接的、不可靠的。Java中的Socket和ServerSocket类实现TCP通信,DatagramSocket和DatagramPacket处理UDP。 9. **JDBC**:包括加载驱动、建立连接、创建Statement或PreparedStatement对象、执行SQL、处理结果集、关闭资源等步骤。批处理和预编译语句提高性能。 10. **XML解析**:DOM、SAX、StAX等方式,DOM一次性加载整个文档,SAX逐行解析,StAX流式解析,各有优缺点。 11. **权限控制**:Java中的public、protected、默认(包访问)和private代表不同的访问级别,理解其在类、方法和变量上的应用。 12. **国际化**:Java的ResourceBundle和Locale类支持多语言环境,使应用程序可以根据用户地区显示相应的文本。 13. **JSP隐含对象**:如page、request、response、session、out、application、config、pageContext等,它们是预定义的Java对象,简化了JSP页面的编程。 14. **JSP指令**:如page、include、taglib等,用于设置页面属性、引入其他文件或注册自定义标签库。 15. **servlet**:doGet和doPost分别对应HTTP的GET和POST请求,init初始化仅调用一次,service处理所有请求。servlet生命周期包括加载、初始化、服务、销毁。 16. **会话跟踪技术**:cookie、session、URL重写和隐藏字段,用于在HTTP无状态环境下保持用户会话信息。 17. **EJB**:企业级Java Bean,EJB容器提供了多种服务,如生命周期管理、事务管理。EJB角色包括开发者、组装者、部署者等。EJB类型有会话Bean、实体Bean和消息驱动Bean。 理解并熟练掌握这些知识点,对于中软或其他Java相关的面试来说,都将大有裨益。