java终端编译

java编译

从c++转到java,c++中:

  1. 编译最常见使用g++对程序进行编译生成可执行文件(中间经历四个过程 预处理 编译 汇编 链接),一般使用

    g++ xxx.cpp -o 目标文件名称

  2. 运行直接使用

    ./目标文件名称

对于java:

  1. 编译首先把代码翻译为.class字节码文件,也就是只有jvm能识别的文件格式类型, java的编译要求文件名和文件中public的类名相同,也就是 文件名是 Test.java,那么对应文件内容中的也应该是 public class Test

    ​ javac Test.java

    生成 Test.class字节码文件

    1. 运行

    ​ java Test.class

    1. 例子

    首先创建一个文件夹test,用来存放文件java文件,然后分别编写Hello.java和Main.java

    Hello.java内容:

    package test;
    
    public class Hello {
    
    private String a = "Hello";
    
    public String getName() {
    	return a;
    }
    }
    

    Main.java内容

    package test;
    
    
    public class Main {
    
    public static void main(String[] args) {
        System.out.println(new Hello().getName());
    }
    }
    

    就是简单的java调用打印函数

    编译:

    ​ javac Main.java Hello.java

    就会在当前目录生成 Main.class和Hello.class

    这样下来Main.class中包含了Hello文件信息,感兴趣的朋友可以使用javap Main.class查看当前class中包含的文件信息,会发现Hello这个类包括使用这个类的信息已经被加载进来

    运行:

    ​ 值得注意的是运行的时候,需要根据java的包路径,在基准目录运行,上面的程序我们使用test目录作为包路径,那么需要到test上层目录进行运行,cd ../,并且运行的时候需要加上包名 + class名,这里只要运行Main,java根据class路径自动寻找

    ​ java test.Main

    输出为Hello
    注:
    如果想指定java运行的顶端目录,可以使用 java -Djava.library.path=xx test.Main

posted @ 2020-11-22 18:53  make_wheels  阅读(189)  评论(0)    收藏  举报