A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© xieshuhua 中级黑马   /  2012-5-14 08:17  /  3291 人查看  /  7 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

我们都知道Java有这个特性,java通过程序-虚拟机-操作系统运行。
我想问的问题是:如果C语言需要一定的虚拟机支持,C是不是也能先新建一个虚拟机环境,然后再通过虚拟机与操作系统建立联系,如果可以的话,为什么没有这么做?
还有就是C的ISO体系和Java的开源(要求数以万计的java使用公司必须兼容)有什么本质的区别?

7 个回复

倒序浏览
这个问题,不是我们必要研究的东西……
回复 使用道具 举报
注意操作系统 是c做出来的,兼容性可想而知。
回复 使用道具 举报
window系统不是用c语言编写的 底层自带虚拟机  别的系统要用c语言程序 我感觉得有c语言虚拟机 单是window系统可能没有要不怎么能有java那 我是这么认为的
回复 使用道具 举报
这和以后我们对于Java的应用范围很有帮助,知道了这个,你就能先感知到学Java的大致能干哪一块的内容和工作,Java和其他语言是如何交互的。
回复 使用道具 举报
我也很想知道。。这原理上次老师提问回答不出来
回复 使用道具 举报
windows有它自带的虚拟机,用来将C/C++的代码编译成字节码,但它的虚拟机是在windows系统中的,也只能在windows下才能运行
回复 使用道具 举报
c语言面向过程的,他本是只提供了基础的实现,和一个标准库,提供了通用性的功能,特殊的功能有不同的实现。
java是在c语言的基础上实现的,其实很多底层方法直接调用了c
记得有一个关键字native什么的,是java里面直接调用c底层函数的。
java提供了不同的平台的实现,java的虚拟机本身不是夸平台的
只是说软件夸平台而已。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马