设为首页 - 加入收藏
广告 1000x90
您的当前位置:黄大仙救世网www78345 > 解释型语言 > 正文

java是解释型语言吗?

来源:未知 编辑:admin 时间:2019-05-27

  1,java是解释型语言,但其也是先从.java编译变成.class后被虚拟机解释执行,那么,.class中是机器语言?

  2,既然.class已经是机器语言了,那么虚拟机的作用也就是根据不同的系统平台选择如何运行机器语言么?

  可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。

  展开全部1.class文件中不是机器语言,是经过编码的8位字节二进制流(注意虽然表示方法都似乎一样的,但是语义是不一样的,class文件有自己的编码格式),数据项按顺序存储在class文件中,向另的项之间没有任何间隔,使得class文件紧凑。其占据多个字节空间的项按高位在前的顺序分为几个连续的字节存放。其实java语言与class文件具有非排他性,两者之间没有必然的联系(当然,普遍认为有联系)。

  2.不同的平台下虚拟机的细节实现不一样,这就使得它解释执行的class文件能够适应不同的平台。

  3.使用虚拟机会减少代码的执行效率,要增强generalization(对不同平台的支持)就必须减少specilization(对某一平台的优化),鱼与熊掌不可兼得的。

  PS:如果你对java的原理更感兴趣的话,关于更多的讲解可以看看Bill Venners的《深入Java虚拟机》,很有用处,虽然只是讲到java 1.2,但是基本原理都差不多的。

  PS PS:class文件的开头部分都是一个称作魔数的段,其内容为0xCAFEBABE。

本文链接:http://heargear.net/jieshixingyuyan/95.html

相关推荐:

网友评论:

栏目分类

现金彩票 联系QQ:24498872301 邮箱:24498872301@qq.com

Copyright © 2002-2011 DEDECMS. 现金彩票 版权所有 Power by DedeCms

Top