zoukankan      html  css  js  c++  java
  • Java 跨平台

    勿以事小而不为

    一直都说Java是跨平台的,开始学的时候,老师也是这么教的,但是Java为什么能够跨平台呢?

    java之所以能够跨平台,是因为java有不同版本的jvm,比如有windows的,linux的。

    你在windows平台写的java代码,经过jvm虚拟机,编译成javac文件(字节码文件)后,可以在不同版本的java虚拟机上进行运行,达到跨平台的目的。

    简单的举例如下:

    先在linux上写一算简单的java代码:

    public class helloworld {
    
        public static void main(String[] args) {
            System.out.println("hello world");
        }
    }

    使用linux的java jvm虚拟机编译成javac文件

     先在linux上运行效果如下:

     然后把javac文件scp到windows上。

     如下:

     在windows上运行helloworld.class 文件

     与在linux上效果一样。

    ========windows 上编译,在linux上运行========

    同样的代码先在windows上进行编写,编译,然后运行,如下:

     把字节码文件scp到linux机器运行:

    登录到linux机器上运行字节码文件:

    小插曲:

    如果你的电脑上装有scala,可以使用scala进行运行一下。

    会发现依然可以运行。

    前提是linux上和windows上安装的jvm版本要一致,不然可能会出现一些意想不到的错误。

    结论,无论是在windows,还是在linux上编译的字节码文件,都可以在双方的平台上运行。

    以上:)

  • 相关阅读:
    单线程的JavaScript是如何实现异步的
    前端优化之 -- 使用 require.context 让项目实现路由自动导入
    插入排序
    选择排序
    冒泡排序
    强缓存和协商缓存
    ES6 Set求两个数组的并集、交集、差集;以及对数组去重
    实现一个new操作符
    我理解的浅拷贝和深拷贝
    javascript专题系列--js乱序
  • 原文地址:https://www.cnblogs.com/suzhenxiang/p/14273802.html
Copyright © 2011-2022 走看看