JAVA面试之JVM、SQL篇

来源:互联网 发布:双开软件哪个好 编辑:程序博客网 时间:2024/05/19 06:35


原文:http://mp.weixin.qq.com/s/EYlW24B2Dfrq14vM-t3rWw



先上图:


JAVA虚拟机是可以加分的一点,对于理解运行原理、内存结构非常有帮助,面试中大部分都是面到一部分边边角角,切记如果遇到大神,切莫装逼,除非你对JVM理解比较深刻。


推荐书籍




1类加载的过程/类的生命周期


准确说类的加载有加载 、验证 、准备、 解析、 初始化 五个阶段,其中,验证、准备 、解析三个可以归为连接(Linking)阶段。

2双亲委派模型


该模型要求除了顶层的启动类加载器外,其余的类加载器都应该有自己的父类加载器,而这种父子关系一般通过组合(Composition)关系来实现,而不是通过继承(Inheritance)。

使用双亲委派模式(ParentsDelegation Model)进行类加载,其加载过程如下:

(1)如果一个类加载器收到了类加载请求,它首先不会自己去尝试加载这个类,而是把类加载请求委派给父类加载器去完成。

(2)每一层的类加载器都把类加载请求委派给父类加载器,直到所有的类加载请求都应该传递给顶层的启动类加载器。

(3)如果顶层的启动类加载器无法完成加载请求,子类加载器尝试去加载,如果连最初发起类加载请求的类加载器也无法完成加载请求时,将会抛出ClassNotFoundException,而不再调用其子类加载器去进行类加载。


3JVM图解

呃,希望大家能看懂吧,不要问太多,因为我也不太清楚

大部分情况下(没有遇到大神的情况下),按