2018中级java工程师面试总结
Java 基础面试知识点: 1. **try-catch-finally** 语句块的执行: - 在Java中,无论是否遇到`return`语句,`finally`块中的代码总是会被执行。当`return`在`try`或`catch`块中执行时,其返回值会被保存到线程栈的顶部,`finally`块执行后,如果它有自己的`return`语句,那么这个`return`的值将覆盖之前`try`或`catch`中的返回值。对于基本类型,`finally`无法改变返回值;但对于引用类型,`finally`可以改变对象的状态,但不能改变引用本身。 2. **JDK 1.5 新特性**: - 自动拆装箱:自动将包装类与基本类型之间进行转换。 - 泛型:允许在类、接口和方法中定义类型参数,提高了代码的重用性与安全性。 - 可变参数:允许多个同类型参数,用三个点(...)表示。 - 静态导入:允许导入一个类的所有静态成员,避免使用类名来调用静态成员。 - 增强for循环:也称为foreach循环,简化遍历集合或数组的操作。 - 互斥锁:提供了`synchronized`关键字和`java.util.concurrent.locks`包下的锁,用于线程同步。 3. **JDK 1.7 新特性**: - 二进制字面量:可以直接用二进制形式(0b/0B开头)定义整数。 - 数字字面量中的下划线:可以在数字中间插入下划线,方便阅读,不改变数值。 - `switch`语句支持字符串:可以基于字符串的值进行判断。 - 泛型简化:菱形泛型(<>)使得类型推断更简洁。 4. **JDK 1.8 新特性**: - 接口的默认方法和静态方法:允许接口中有实现的非抽象方法,使用`default`关键字,静态方法则无需实例化接口就能调用。 - Lambda表达式:提供了一种简洁的匿名函数写法,简化了函数式编程。 - 函数式接口:只有一个抽象方法的接口,如`Runnable`,是Lambda表达式的载体。 - `Optional`类:用于表示可能为`null`的值,避免空指针异常。 5. **JDK 1.9 新特性**: - 接口方法私有:接口中的方法可以声明为私有(`private`),增强了接口的灵活性。 6. **Java 平台 I/O 模型的区别**: - **BIO (Blocking I/O)**:同步阻塞模型,每个连接都需要一个独立的线程处理,适合连接数量少且连接时间长的场景。 - **NIO (Non-blocking I/O)**:同步非阻塞,通过多路复用器(如`Selector`)监听多个连接,适合连接数量多且连接时间短的场景。 - **AIO (Asynchronous I/O)**:异步非阻塞,由操作系统完成I/O操作并通知应用,适合连接数量多且读写操作密集的场景。 7. **反射中的`Class.forName()`与`ClassLoader`**: - `Class.forName()`不仅加载类,还会初始化类,执行类中的静态初始化块。 - `ClassLoader`仅负责加载类,不执行静态初始化块。除非调用`newInstance()`方法,才会执行静态初始化块。 8. **阻塞队列与普通队列**: - 阻塞队列在队列为空时,获取元素的线程会被阻塞,直到队列有元素;在队列满时,尝试插入元素的线程也会被阻塞,直到队列有空位。这种方式在多线程同步和资源管理中非常有用,如`java.util.concurrent`包下的`BlockingQueue`接口及其实现。 以上知识点涵盖了Java基础、版本更新特性、I/O模型和反射等内容,这些都是中级Java工程师面试中可能会遇到的重要主题。
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![exe](https://img-home.csdnimg.cn/images/20210720083343.png)
![](https://csdnimg.cn/release/download_crawler_static/10317576/bg1.jpg)
![](https://csdnimg.cn/release/download_crawler_static/10317576/bg2.jpg)
![](https://csdnimg.cn/release/download_crawler_static/10317576/bg3.jpg)
![](https://csdnimg.cn/release/download_crawler_static/10317576/bg4.jpg)
![](https://csdnimg.cn/release/download_crawler_static/10317576/bg5.jpg)
剩余63页未读,继续阅读
![avatar-default](https://csdnimg.cn/release/downloadcmsfe/public/img/lazyLogo2.1882d7f4.png)
![avatar](https://profile-avatar.csdnimg.cn/f29022c432d14fb59d02297ee11ccec2_hzau_itdog.jpg!1)
- 粉丝: 98
- 资源: 2
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![voice](https://csdnimg.cn/release/downloadcmsfe/public/img/voice.245cc511.png)
![center-task](https://csdnimg.cn/release/downloadcmsfe/public/img/center-task.c2eda91a.png)
最新资源
![feedback](https://img-home.csdnimg.cn/images/20220527035711.png)
![feedback-tip](https://img-home.csdnimg.cn/images/20220527035111.png)
![dialog-icon](https://csdnimg.cn/release/downloadcmsfe/public/img/green-success.6a4acb44.png)