Android–进阶对Java平台的理解?Java是解释执行吗?

2018-07-20  本文已影响41人  遛狗的程序员

最近感悟:对自己负责、对工作负责

问题:


首先在这里我们就基于HotSpot虚拟机进行分析(因为作者对HotSpot理解有点模糊,强化一下)

维基百科:
Java HotSpot Virtual Machine
开发者 甲骨文公司 (前升阳公司)
HotSpot Group
HotSpot的正式发布名称为"Java HotSpot Performance Engine",是Java虚拟机的一个实现,包含了服务器版桌面应用程序版,现时由Oracle维护并发布。它利用JIT及自适应优化技术(自动查找性能热点并进行动态优化,这也是HotSpot名字的由来)来提高性能。

两种执行方式
强制使用该模式:-Xint
强制使用该模式 -Xcomp
两种编译模式对比:

总结:

解释器:

JIT编译器:

注意

回答问题1:

宏观角度:

Java平台通过虚拟机屏幕了操作系统的底层细节,使得开发者不需要关心不同操作系统之间的差异。Java平台已经形成了一个生态系统,在这个生态系统中有诸多的研究领域:

  1. 虚拟机、编译技术的优化(例如:GC优化、JIT、AOT等):对效率的追求是人类的天性之一。
  2. Java语言本身的变化。
  3. 大数据处理。
  4. 客户端开发(例如:Android平台)
  5. ...
微观角度:
  1. Java语言本身、JDK中所提供的核心类库和相关工具:
    • 面向对象(封装、继承、多态)
    • 跨平台(JVM运行.class文件)
    • 语言(泛型、Lambda)
    • 类库(集合、并发、网络、IO/NIO)
    • JRE(Java运行环境、JVM、类库)
    • JDK (JDK开发工具、包括JRE、javac、诊断工具)
    • ...
  2. Java虚拟机以及其他包含的GC。

回答问题2:

回答片面,不正确!

上面答案分析相信也会随着知识面的不断拓宽而不断的进行优化修改

参考:https://www.cnblogs.com/java-zhao/p/5203144.html
,极客时间APP第1讲|谈谈你对Java平台的理解

声明:此为原创,转载请联系作者


作者:微信公众号添加公众号-遛狗的程序员 ,或者可以扫描以下二维码关注相关技术文章。

qrcode_for_gh_1ba0785324d6_430.jpg

当然喜爱技术,乐于分享的你也可以可以添加作者微信号:

WXCD.jpeg
上一篇下一篇

猜你喜欢

热点阅读