zoukankan      html  css  js  c++  java
  • JVM 是用什么语言写的?

    JAVA中就虚拟机是其它语言开发的,用的是C语言+汇编语言  基于此之上就是JAVA本身了  虚拟机只起到解析作用
    另外,JAVA并不比C语言慢,说JAVA慢一般是九十年代那时候的JAVA, 而现在 在一段优秀的JAVA程序和C程序执行效率上来比较是没有多大差距的  并且现在JAVA已经可以像C语言那样,直接编译为可执行文件(不用虚拟机,跨平台为代价)了

    不知道你看过 卓越编程之道二(运用底层思维编写高级代码) 没有,那里面详细的讲述了高级语言从编写到编译执行的过程,通过目标文件的反汇编对比,发现C,C++,JAVA,dephi等语言在同等质量下的目标文件长度上基本上没多大区别,一门语言的运行速度快慢,与你编写代码过程中是否符合编译器规则息息相关。  有空你可以去看看这本书。
    Java底层实现是用C语言写的,因为做了很多封装,所以比C语言速度慢?
    JVM是c写的,所以对JVM常用的攻击就是buffer overflow。
    c语言写的, java6.0都已经开源了。
    在windows平台的JVM实现是用VC写的,你下载的JDK其实都有一个src.zip,那就是Java的源码
    原始是用C写的,如javac命令等,后面的功能是java自身写的,如api,现在大多都开源了,有兴趣可以看看那个项目,叫openjdk,你也可以提供代码,说不定后续版本会采用。

    JAVA中就虚拟机是其它语言开发的,用的是C语言+汇编语言  基于此之上就是JAVA本身了  虚拟机只起到解析作用

    另外,JAVA并不比C语言慢,说JAVA慢一般是九十年代那时候的JAVA, 而现在 在一段优秀的JAVA程序和C程序执行效率上来比较是没有多大差距的 并且现在JAVA已经可以像C语言那样,直接编译为可执行文件(不用虚拟机,跨平台为代价)了
    不知道你看过 卓越编程之道二(运用底层思维编写高级代码) 没有,那里面详细的讲述了高级语言从编写到编译执行的过程,通过目标文件的反汇编对比,发现C,C++,JAVA,dephi等语言在同等质量下的目标文件长度上基本上没多大区别,一门语言的运行速度快慢,与你编写代码过程中是否符合编译器规则息息相关。 有空你可以去看看这本书。

    Java底层实现是用C语言写的,因为做了很多封装,所以比C语言速度慢?

    JVM是c写的,所以对JVM常用的攻击就是buffer overflow。

    c语言写的, java6.0都已经开源了。

    在windows平台的JVM实现是用VC写的,你下载的JDK其实都有一个src.zip,那就是Java的源码 。

    原始是用C写的,如javac命令等,后面的功能是java自身写的,如api,现在大多都开源了,有兴趣可以看看那个项目,叫openjdk,你也可以提供代码,说不定后续版本会采用。
  • 相关阅读:
    Mysql 创建表时错误:Tablespace for table `tablexx` exists. Please DISCARD the tablespace before IMPORT.
    【Problem】xampp in ubuntu下命令行启动mysql报错: ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/opt/lampp/var/mysql/mysql.sock' (2)
    余生,一定要找一个随时能和你聊天的人
    找个可以说话的人 不容易
    我们都应该找一个,可以一辈子陪自己说话的人
    windows下安装ubuntu
    Ubuntu 修改环境变量
    Ubuntu14.04如何备份和恢复系统
    deeplearning 源码收集
    Caffe + Ubuntu 14.04 64bit + CUDA 6.5 配置说明2
  • 原文地址:https://www.cnblogs.com/zhangyongjian/p/3648429.html
Copyright © 2011-2022 走看看