目录
面向对象编程(OOP)
常见的Java问题
Java线程
Java集合类
垃圾收集器
常见的Java问题
1.什么是Java虚拟机?为什么Java被称作是“平台无关的编程语言”?
2.JDK和JRE的区别是什么?
3.”static”关键字是什么意思?Java中是否可以覆盖(override)一个private或者是static的方法?
4.是否可以在static环境中访问非static变量?
5.Java支持的数据类型有哪些?什么是自动拆装箱?
Java语言支持的8中基本数据类型是:
6.Java中的方法覆盖(Overriding)和方法重载(Overloading)是什么意思?
7.Java中,什么是构造函数?什么是构造函数重载?什么是复制构造函数?
8.Java支持多继承么?
9.接口和抽象类的区别是什么?
10.什么是值传递和引用传递?
Java线程
11.进程和线程的区别是什么?
12.创建线程有几种不同的方式?你喜欢哪一种?为什么?
有三种方式可以用来创建线程:
13.概括的解释下线程的几种可用状态。
14.同步方法和同步代码块的区别是什么?
15.在监视器(Monitor)内部,是如何做线程同步的?程序应该做哪种级别的同步?
16.什么是死锁(deadlock)?
17.如何确保N个线程可以访问N个资源同时又不导致死锁?
Java集合类
18.Java集合类框架的基本接口有哪些?
19.为什么集合类没有实现Cloneable和Serializable接口?
20.什么是迭代器(Iterator)?