1.Java跨平台特性
Java有一个其他语言都没有特点,那就是跨平台。平台就是指我们计算机的操作系统,例如:Windows、Linux、Mac等操作系统。跨平台的意思就是Java程序,在一次编译后,在这些平台上都可以运行。其他编程语言没有这个特性,例如c语言在Windows上编译的文件,放到Linux系统上运行,可能就有不兼容问题。
首先java的跨平台不是指java语言本身具有跨平台特性,而是不同平台上都有可以让java运行的环境,这个运行环境就是JRE。JRE由JVM和其目录下类库组成,JVM 是 Java 平台的基础,是整个java实现跨平台的最核心的部分,所有的.java源文件程序首先会编译成.class类文件字节码,字节码不能直接与操作系统交互,在运行时JVM通过类加载器加载字节码,以解释或者编译的方式将字节码转换成目标机器码交给本地系统去执行,从而屏蔽了操作系统和硬件的细节,也就实现了“一次编译到处运行“的效果。