关于java的跨平台特性

我不知道我这样理解对不对,比如我有两个电脑,一个是win7-32一个是win7-64.我分别为两个电脑安装了对应版本的JDK。然后把编一个程序,分别在两台电脑上解释执行,都可以,这就叫跨平台?
可是C程序也可以分别在不同系统的电脑上运行啊~

谁能给我个解释?

第1个回答  推荐于2017-11-25
java的跨平台性,是通过不同系统都有对应的JVM实现的,java程序只需要一次编译成class文件,就可实现跨平台执行。实际上就是不同系统的JVM把class文件都解释成相同的意思,实现了跨平台。可C程序由于不同系统的编译器不同,每次跨平台都得编译成不同二进制文件,所以C在不同系统的运行实际上运行的是不同的程序(编译产生的文件不同),虽然它们的源码是相同的,java就不同了,它只编译一次,就可以跨平台了。本回答被提问者采纳
第2个回答  2018-09-15
JAVA编程的整个过程:Java——编译器——jvm——平台。具体的步骤是这样的:写好的Java源文件通过javac命令编译生成class文件(中间文件),然后jvm对class文件进行执行生成机器语言然后机器语言在平台中操作。而这个整个过程与C语言的过程的区别就是有一个jvm虚拟机和中间文件(class文件)的存在。这个class文件是可以运用在各类jvm中,而再由jvm生成机器语言。因为有jvm这个东西的存在,使得我们用java语言可以跨越平台间来使用,所以说Java语言是跨平台性。
第3个回答  2013-07-31
跨平台是指同一个程序既可以在windows上运行也可以在unix等系统上运行……
第4个回答  2021-01-10

相似回答