J2EE面试精华:详解HashTable原理与HashMap差异

5星 · 超过95%的资源 需积分: 8 35 下载量 37 浏览量 更新于2025-01-04 收藏 44KB DOC 举报
在J2EE面试题集中,面试者可能会问到一系列关于Java基础、集合框架以及J2EE核心概念的问题。以下是一些关键知识点的详细解析: 1. **继承问题**: - Java中,`Thread` 类可被继承,因为它是类(T)。 - `Number` 和 `Double` 类不可直接被继承,因为它们是接口(T),而不是类(F)。 - 其他类如 `Math` 和 `Void` 也不能被继承,因为它们要么是类(F),要么是常量(F)。 - 只有 `Class` 和 `ClassLoader` 可以被继承,因为它们是类(T)。 2. **抽象类与接口的区别**: - 抽象类和接口的主要区别在于: - 实现方式:接口可以多重实现(multiple interfaces),而抽象类只能单继承(single inheritance)。 - 成员变量:接口的成员变量默认为 `public static final`(常量),抽象类的成员变量默认是包内可见(友好模式)。 - 实现:接口只允许声明方法,抽象类可以声明抽象方法和提供具体实现。 3. **HashTable原理及与HashMap的对比**: - HashTable 使用散列函数 H(k) 将键 (key) 转换为数组索引,存放节点。它同步(synchronized)且不允许null键值对。 - HashMap 相比更灵活,非同步(unsynchronized),允许null键值对,并提供了更快的插入和删除速度,因为它是基于链表或红黑树解决哈希冲突。 4. **Servlet中的forward与redirect**: - `forward` 是内部转发,请求在同一个Servlet上下文中进行,不会重新初始化会话,可能导致数据丢失。 - `redirect` 是外部重定向,创建一个新的HTTP请求,旧请求被终止,数据不会保留。 5. **Web容器和J2EE规范**: - Web容器是实现J2EE规范的应用服务器,负责管理web应用程序的并发、安全性、生命周期等。J2EE规范定义了web程序运行的环境。 6. **J2EE相关名词**: - JNDI (Java Naming and Directory Interface): 用于分布式应用间查找和定位服务的命名和目录服务。 - JMS (Java Message Service): 提供应用程序间的消息传递,支持点对点和广播通信。 - JTA (Java Transaction API): 提供分布式事务协调,简化跨资源事务处理。 - JAF (Java Action Framework): 安全认证框架,允许开发者定制安全控制策略。 - RMI (Remote Method Invocation): 远程过程调用,用于在分布式系统中调用对象的方法。 掌握这些知识点将有助于在J2EE面试中展现扎实的基础和对框架的理解。在准备面试时,除了理论知识,还要熟悉常见问题的实战案例和应用场景。