CoreJava面试题集:涵盖基础、语法、异常等关键点

需积分: 3 1 下载量 11 浏览量 更新于2024-07-25 收藏 633KB PDF 举报
"面试题集-CoreJava+部分" 这篇面试题集主要涵盖了Core Java的基础知识,包括语法、异常处理、集合、线程、输入输出(IO)与套接字(Socket)、面向对象设计(OOAD)与统一建模语言(UML)、XML、SQL、JDBC与Hibernate、Web开发、EJB与Spring框架、数据结构、算法、计算机基础、C++编程以及WebLogic等服务器相关的知识。以下是对其中一些关键知识点的详细解释: 1. **面向对象的特征**:包括封装、继承、多态和抽象。封装是将数据和操作这些数据的方法捆绑在一起,继承允许一个类(子类)继承另一个类(父类)的属性和方法,多态允许不同类型的对象对同一消息作出响应,抽象则用于定义接口或基类,提供通用的处理方式。 2. **作用域**:`public`、`private`、`protected`和默认(包访问)分别代表不同的访问级别。`public`可以在任何地方访问,`private`只能在本类内部访问,`protected`在本类和同一包内的其他类以及子类中可访问,而默认作用域仅限于同一包内。 3. **String类型**:不是Java的基本数据类型,而是类。因此,字符串常量是不可变的。 4. **浮点型转换**:`float f = 3.4`是错误的,因为3.4是double类型,需要转换为float,如`float f = 3.4f`。 5. **短整型加法**:`short s1 = 1; s1 = s1 + 1;`会导致编译错误,因为表达式`s1 + 1`的结果是int类型,需要显式转换回short类型,如`s1 = (short)(s1 + 1);` 6. **goto关键字**:Java中没有goto关键字,它不符合面向对象的编程理念。 7. **int与Integer的区别**:int是基本数据类型,而Integer是int的包装类,可以实现对象的特性,如null值、方法等。 8. **位操作符与逻辑操作符**:`&`是位操作符,执行按位与,`&&`是逻辑操作符,执行短路与。类似地,`|`和`||`分别是按位或和短路或。位操作符适用于整数类型,逻辑操作符适用于布尔类型。 9. **Math.round()**:`Math.round(11.5)`返回12,`Math.round(-11.5)`返回-11。round方法将浮点数四舍五入为最接近的整数。 10. **switch语句**:在Java 7之前,switch不能直接作用于byte、char、short和int类型,从Java 7开始支持枚举类型,Java 14引入了switch表达式,支持String类型和其他封包类型。 11. **堆和栈的区别**:栈主要用于存储基本类型和引用(指向堆中的对象),而堆用于存储所有对象实例。栈内存由系统自动管理,速度快但空间有限,堆内存则需要程序员手动管理,可动态分配大小。 12. **数据结构与算法**:这部分可能涉及到数组、链表、栈、队列、树、图等数据结构,以及排序、查找、递归等算法。了解它们的原理和应用场景是Core Java开发者的基础技能。 13. **Web开发**:包括Servlet、JSP、过滤器、监听器、MVC模式、请求响应模型等,是构建Web应用的关键。 14. **EJB与Spring框架**:EJB(Enterprise JavaBeans)是Java EE中用于构建企业级应用的组件模型,Spring则是一个轻量级的IoC(Inversion of Control)和AOP(Aspect-Oriented Programming)框架,两者都提供了服务注入和事务管理等功能。 15. **WebLogic**:Oracle提供的一个企业级Java应用服务器,用于部署和管理Java EE应用程序。 这个面试题集全面覆盖了Core Java的各个方面,适合准备Java面试或巩固基础的开发者参考学习。