不依赖操作系统的程序才是最上层的程序,cpu的汇编码还有芯片要求那,你能说他过时??没这个一切都没了,能跨平台是因为他站的太高,抬个腿就过去了,单你却忽视了在他下面的程序是什么开发的,你只知道有
虚拟机就能用java ,虚拟机下面还用东西,不是直接占到硬件上的。。。所谓的不依赖操作系统是只是代码不依赖,因为他们的编译代码是
中间代码,并非
机器码,在运行时才编译成机器码。。。。。
不是所有程序都需要跨平台,比如你玩个
魔兽争霸你还要支持手游吗,用java 通常是由跨平台需要,如果没有这个需要,那就会有其他方面考虑,其他方面的优势java未必有,很多软件开发都有需要大量第三方组件,如果java缺乏这些东西,或者效果不好,自然不会用。。。。还有即使一些低端CPU系统非常简单,就不可能去支持虚拟机,甚至连系统都没有,这些程序谁开发。。。
微软公司对windows进行优化难道要靠java吗???
编程出发点不同罢了, java不可能取代c和c++ ,就像裁缝不能取代厨子一样。。。。。
还有c++,c只是一种语法,不支持跨平台是因为编的是机器码,如果你做个
编译器能把他编译成java的中间码,为什么不能跨平台。。。