i++和++i的区别(用记事本编写、编译、执行Java)
本来是要给自己总结 i++和++i的区别,IDE出了问题,刚好总结一下怎么借助记事本和命令行开发、编译以及运行Java代码。(记得四年半前第一次用java、javac 写出自己的第一个hello world时,感觉打开了新世界的大门)
本篇文章分为四步
1):用记事本编写java文件
2):用javac命令编译.java文件
3):用java命令运行编译生成的class文件(计算机能识别的二进制字节码文件)
4):javap -c 命令查看代码对应的指令集
1):编写java文件
当前路径下只有一个Java文件,内容如下
public class CoisiniMain{
public static void main(String[] args){
int a = 3;
int c = a++; //a先赋值,再执行++操作
System.out.println("c的值预计是3,运行结果是:--"+c);//c是3
System.out.println("a的值预计是4,运行结果是:--"+a);//a是4
int b = 1;
int d = ++b;//b新进行++操作,再复制
System.out.println("b的值预计是2,运行结果是:--"+b);
System.out.println("d的值预计是2,运行结果是:---"+d);
int e = c + d;
System.out.println("c+d的值预计是5,运行结果是:--"+ e);
}
}
2):编译
cmd打开命令窗口,路径切换到java文件所在位置,用javac CoisiniMain.java 命令进行编译
编译成功后会多出来一个class文件,执行代码的时候,其实就是运行这个class文件
3)运行 java CoisiniMain(注意,java文件和class文件名字是一样的,都叫CoisiniMain,但是这里的名字实际是编译后生成的class文件的名字。因为运行本身就是执行编译生成的字节码文件)
至此,一个Java文件的编译执行已经完成
4)javap -c CoisiniMain 查看JVM指令集,看一下底层到底是怎么执行的(注:这个CoisiniMain指的是字节码文件CoisiniMain.class的名字)
新手上路,请多指教