我是李福春,我为面试做准备。今天回答第一个问题。
java平台简要介绍?java是解释执行的吗?
java平台基于jvm具备write once,run everywhere的跨平台能力;
具备自动垃圾回收;
具有无所不能的生态圈,比如spring,大数据,搜索,maven等;
java语言是面向对象的,常见的特性有泛型,反射,lambda;
jre包括jvm,java类库,模块;
jdk包含jre,还提供了一些工具,比如编译工具,诊断工具,辅助工具;
jvm赋能java,使得java具备跨平台的能力,jvm还支持其他的语言,比如常见的groovy,scala等;
jvm常见的垃圾收集器有serialGC,parallelGC,CMS,G1
常见垃圾回收算法:标记,复制,整理
java核心类库包括 集合,io, 网络,并发,util ;
此外还有海量的第三方库。
java的诊断工具有 jmap,jstack,jconsole等;
java是综合性的执行,即部分解释执行,部分编译执行;
java的生命周期分为编译期,运行期;
编译期是基于类加载器:
Bootstrap,Application,Extended,自定义类加载器
通过 加载,验证,连接,初始化成字节码
可以通过参数指定jvm的执行方式:
-Xint: 指定jvm只解释执行
-Xcomp: 指定jvm不解释执行;
AOT的编译方式使用的比较少,不讲了。
本节简单的介绍了java平台,以及jdk工具;
然后分析了java的生命周期,它是综合解释执行和编译执行的。
原创不易,转载请注明出处,欢迎沟通交流。