java语言
java语言是一种高级编程语言,遵循java语言规范
语言发展历程经历了
机器语言:0101,
汇编语言:机器语言的助记符号
低级语言:脱离了机器码的束缚
高级语言:
的阶段
java语言是一种混合执行的语言,编译期:将.java编译成.class文件,执行期:.class文件,可以解释执行,也可以编译执行,更常见的则是解释和编译公共进行
jdk,jre,jvm的区别
jdk:Java Development Kit java开发者套件,=jre+工具包,如javac,java,jar等工具
jre:Java Runtime Environment java运行时环境,运行java程序最基本的要求,=jvm+java API,java API如网络,文件等等。。。
jvm:Java Virtual Machine Java虚拟机,执行.class字节码文件。
java程序的执行过程
.java源码文件经过前端编译器如:javac编译为.class字节码文件
jvm执行.class字节码文件
jvm是一台抽象的计算机,屏蔽操作系统实现细节,而.class字节码就是jvm的机器码
计算机(物理机)是由cpu,主板,内存等等硬件组成,每个硬件都有自己的操作码/机器码提供操作能力。
操作系统屏蔽了计算机的操作码的不同,
jvm又屏蔽了操作系统的不同,将自己包装成一个物理机,执行.class字节码
jvm类型
hotspot是一种jvm
hotspot
hotspot基于栈的架构,指令是由操作码和操作数组成
现代cpu多是基于寄存器的架构