一.Java基础
1.java的三大特性
2.java中四种修饰符的限制范围
同类 | 同包 | 不同包(子类) | 不同包(非子类) | |
public | √ | √ | √ | √ |
protected | √ | √ | √ | |
default | √ | √ | ||
private | √ |
3.object类中的方法
https://blog.csdn.net/u013894427/article/details/53468038
4.final、finally、finalize区别
final可以修饰类、变量、方法,修饰类表示该类不能被继承、修饰方法表示该方法不能被重写、修饰变量表示该变量是一个常量不能被重新赋值。
finally一般作用在try-catch代码块中,在处理异常的时候,通常我们将一定要执行的代码方法finally代码块中,表示不管是否出现异常,该代码块都会执行,一般用来存放一些关闭资源的代码。
finalize是一个方法,属于Object类的一个方法,而Object类是所有类的父类,该方法一般由垃圾回收器来调用,当我们调用System的gc()方法的时候,由垃圾回收器调用finalize(),回收垃圾。
---------------------
原文:https://blog.csdn.net/mumu1998/article/details/81775022
5.ArrayList/LinkedList/Vector比较
ArrayList 基于数组实现 适合随机查找和遍历,不适合插入删除
LinkedList 基于链表实现
Vector与ArrayList一样 基于数组实现 不同的是它支持线程的同步,同一时刻只有一个线程能写vector
6.HashMap/Hashtable/ConcurrentHashMap比较 原理
https://www.cnblogs.com/heyonggang/p/9112731.html
二、JVM
1.垃圾回收机制
https://www.cnblogs.com/1024Community/p/honery.html