当前位置:七道奇文章资讯编程技术Java编程
日期:2011-04-13 09:24:00  来源:本站整理

<b>Java编译历程与c/c++编译历程有何差别</b>[Java编程]

赞助商链接



  本文“<b>Java编译历程与c/c++编译历程有何差别</b>[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

你对Java编译历程和编译原理,Java编译程序将java源程序编译成jvm可履行代码--java字节码,并且Java编译器却不将对变量和办法的引用编译为数值引用,也不肯定程序履行历程中的内存筹划,而是将些标记引用信息保存在字节码中,由注释器在运行历程中创建内存筹划,然后再通过查表来肯定一个办法所在的地址,这样就有效地保证了java的可移植性和安全性.
    Java编译原理
    1、Java编译历程与c/c++编译历程差别
    Java编译程序将java源程序编译成jvm可履行代码--java字节码.
    c/c++编译历程:
    当C编译器编译生成一个对象的代码时,该代码是为在某一特定硬件平台运行而生成的.因此在编译历程中,编译程序通过查表将全部对标记的引用转换为特定的内存偏移量,以保证程序运行.
    Java编译历程:
    Java编译器却不将对变量和办法的引用编译为数值引用,也不肯定程序履行历程中的内存筹划,而是将些标记引用信息保存在字节码中,由注释器在运行历程中创建内存筹划,然后再通过查表来肯定一个办法所在的地址,这样就有效地保证了java的可移植性和安全性.
    2、jvm工作原理
    运行jvm字符码的工作是由注释器来完成的.注释履行历程分三步举行:代码的装入、代码的校验、和代码的履行.
    装入代码的工作由“类装载器classloader”完成.类装载器负责装入运行一个程序需求的全部代码,这也包含程序代码中的类所担当的类和被调
    用的类.当类装载器装入一个类时,该类被放在自己的名字空间中.除了通过标记引用自己名字空间以外的类,类之间没有其他办法可以影响其他类.在本台计算机的全部类都在同一地址空间中,而全部从外部引进的类,都有一个自己独立的名字空间.这使得本地类通过同享相同的名字空间得到较高的运行效率,同时又保证它们与从外部引进的类不会彼此影响.
    当装入了运路程序需求的全部类后,注释器便可肯定整个可执路程序的内存筹划.注释器为标记引用与特定的地址空间成立对应关系及查询表.通过在这一阶段肯定代码的内筹划,java很好地办理了由超类改变而使子类崩溃的问题,同时也避免了代码的不法拜候.
    随后,被装入的代码由字节码校验器举行查抄.校验器可以发现操作数栈好处、不法数据范例转化等多种错误.通过校验后,代码便开始履行了.
    java字节码的履行有两种方法:
    1)当即编译方法:注释器先将字节编译成机械码,然后再履行该机械码.
    2)注释履行方法:注释器通过每次注释并履行一小段代码来完成java字节码程序的全部操作.本节关于Java编译的内容介绍到这里,请关注本节其他相关报道.


  以上是“<b>Java编译历程与c/c++编译历程有何差别</b>[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
  • <b>hosts是什么 hosts文件在什么位置 若何改正hosts</b>
  • <b>在 Windows 8 中手动安装语言包</b>
  • <b>五个常见 PHP数据库问题</b>
  • Windows中Alt键的12个高效快速的利用本领介绍
  • <b>MySQL ORDER BY 的实现解析</b>
  • <b>详解MySQL存储历程参数有三种范例(in、out、inout)</b>
  • <b>Win8系统恢复出来经典的开始菜单的办法</b>
  • <b>Win8系统花屏怎么办 Win8系统花屏的办理办法</b>
  • <b>Windows 7系统下无线网卡安装</b>
  • <b>为什么 Linux不需求碎片整理</b>
  • <b>Windows 8中删除账户的几种办法(图)</b>
  • <b>教你如安在win7下配置路由器</b>
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .