1.Javac: 编译器 javac 文件名.java
2.java: 虚拟机 java 类名
二、JDK
1.jdk: 开发包,javac.exe、java.exe、源文件src.zip、核心类rt.jar
2.jre: 运行包,java.exe、rt.jar
三、环境变量
1.path: 当我们运行一个.exe可执行文件时,操作系统会首先在当前路径下找
如果没有,会去注册表里找,最后会去path环境变量中所配置的
目录下去找,如果还没有,就报错
2.classpath: Java虚拟机在运行一个类是首先会加载类,只会去classpath
环境变量中所配置的目录下去找,和当前目录没任何关系
四、二、八、十六进制
1. 任何进制转十进制都用乘法: 每一位的数值乘以该进制的角标(位数)次方,再相加。例如:八进制转成十进制:0752 = 7*82+5*81+2*80 = 448+40+2 = 490
2.十进制转任何进制都用除法 : 除以进制,直到商为0。将所有的余数反转
3.二进制转八进制: 每三位一看,二进制的每三位作为八进制的每一位
4.二进制转十六进制: 每四位一看,二进制的每四位作为十六进制的每一位
五、计算机中的运算规则
1.所有的数都是先转成二进制进行存储,再用累加器进行相加
2.减法运算会演变成加法,5-5 就变成 5+(-5)
3.负数在计算机中表示方式: 原码-->反码(将原码每一位取反)-->补码(将反码加1)
六、码表
文字要存储到计算机中都需要查码表编码,取出文字都需要解码
1.ASCII码表: 每个字符占1个字节,键盘上所有的键都对应该表的一个字符(回车键特殊,占两个"\r\n")
2.GB2312码表: 中文占两个字节(都是负数),英文占1个字节(正数),注意标点符号和全半角问题
3.GBK码表 : gb2312增容,英文占1个字节(正数),中文占两个字节(第一个为负,第二个可正可负)
4.Unicode码表: 所有的字符都占两个字节,前两个字节是特征码
5.UTF-8码表: 每个字符占1~3个字节,实验证明,英文占1个,汉字占3个,前三个为特征码
最后,附图表示:
c运行原理:
------------------------------------------------------------------------------------------
java运行原理
------------------------------------------------------------------------------------------
jvm的运行过程:
------------------------------------------------------------------------------------------
十进制转成二进制: