摘要:一、Java是一种面向对象、跨平台的编程语言,在jvm上执行字节码;二、面向对象的三大特性为封装、继承和多态;三、数组是固定长度的元素集合,链表是动态长度的元素集合,栈和队列实现不同数据结构;四、单例模式保证类只有一个实例,工厂模式分离对象创建与使用,观察者模式允许对象订阅事件;五、线程是轻量级执行单元,进程是独立执行单元,同步等待操作完成,异步不等待操作完成;六、jvm主要内存区域为堆、栈和方法区,垃圾回收自动回收不再使用的对象,jit编译器提升性能;七、socket是网络编程的基础
Java 面试题 1200 道
一、基础知识
-
Java 是什么?
- 一种面向对象、跨平台的编程语言。
-
Java 虚拟机 (JVM) 的作用是什么?
立即学习“Java免费学习笔记(深入)”;
- 执行 Java 字节码的虚拟机,为不同的平台提供统一的运行环境。
-
数据类型有哪些?
-
访问修饰符有哪些?
-
Java 中的异常处理机制如何实现?
二、面向对象
三、数据结构
-
数组的特点是什么?
- 固定长度的元素集合,按索引访问。
-
链表的特点是什么?
- 动态长度的元素集合,通过指向下一个元素的引用连接。
-
栈和队列有什么区别?
- 栈:后进先出 (LIFO),队列:先进先出 (FIFO)。
-
哈希表的原理是什么?
- 根据键值查找和存储数据,使用散列函数将键映射到索引。
四、设计模式
-
单例模式的优点是什么?
- 保证整个系统中只有一个该类的实例。
-
工厂模式的用途是什么?
- 将对象的创建与使用分离。
-
观察者模式的原理是什么?
- 允许对象订阅和观察另一个对象的事件。
五、并发编程
-
- 线程:进程中的轻量级执行单元,共享进程的资源;进程:独立的执行单元,拥有自己的资源。
-
同步和异步的区别是什么?
- 同步:等待操作完成再继续执行;异步:不等待操作完成就继续执行。
-
死锁的成因是什么?
- 两个或多个线程相互等待对方释放锁,导致进度停滞。
六、JVM
-
JVM 主要的内存区域有哪些?
- 堆、栈、方法区、元空间
-
垃圾回收的工作原理是什么?
- 自动回收不再使用的对象,释放内存。
-
JIT 编译器的作用是什么?
- 将 Java 字节码编译为平台特定的机器代码,提高性能。
七、网络编程