课程咨询 :18487146383

  • 达内长沙java培训详解:java程序运行

    发布:长沙Java培训      来源:码农网      时间:2016-09-21

  • 作为一名程序猿,我们每天都在写Code,但你真的了解它的生命周期么?今天就来简单聊下它的生命历程,说起一段Java Code,从出生到game over大体分这么几步:编译、类加载、运行、GC。

    经过了前面达内长沙java培训所说的编译和类加载两个阶段之后,程序开始正常跑起来了,我们都知道程序执行过程涉及到了各种指令的计算操作,程序如何执行的呢?这地方就会使用到达内长沙java培训开头谈到的后端编译器(JIT即时编译器)+解释器这种搭配使用的混合模式(HotSpot虚拟机默认采用了解释器与一个编译器),字节码执行引擎则负责着这类各种程序计算操作的任务,它在执行Java代码的时候有可能会有解释执行(通过解释器执行)和编译执行(通过即时编译器产生本地代码执行)两种选择,也可能两者兼备。

    栈帧是用于支持虚拟机进行方法调用和执行的数据结构,具体的压栈弹栈各种指令计算的思路涉及到了一个经典的算法——Dijkstra算法,至于如何执行有兴趣的自己查资料吧这地方不会过多深入。

    运行期的优化问题在这个阶段同样重要,而JVM设计团队则把对性能的优化集中到了这个阶段,这样可以让那些不是由Javac产生的Class文件同样享受到编译器优化带来的好处,至于具体的优化技术有哪些呢?有很多,达内长沙java培训这里简单提几个具有代表性的优化技术:公共子表达式消除、数组边界检查消除、方法内联、逃逸分析等等。

上一篇:达内长沙java培训详解:java程序类加载(下)

下一篇:达内长沙java培训详解:java程序GC

最新开班日期  |  更多

Java--零基础全日制班

Java--零基础全日制班

开班日期:6月30日

Java--零基础业余班

Java--零基础业余班

开班日期:6月30日

Java--大数据全日制班

Java--大数据全日制班

开班日期:6月30日

Java--大数据业余制班

Java--大数据业余制班

开班日期:6月30日

  • 网址:http://cs.java.tedu.cn     地址:长沙市开福区芙蓉中路一段 476 号建鸿达现代城 9 楼
  • 课程培训电话:18487146383     全国服务监督电话:400-111-8989
  • 服务邮箱 tousu@tedu.cn
  • 2001-2016 达内时代科技集团有限公司 版权所有 京ICP证8000853号-56