推广链接网站,开网页速度慢,seo业务培训,青岛建网站的公司JVM#xff0c;JRE#xff0c;JDK
JVM
运行Java字节码的机器
JRE
Java运行时环境#xff0c;包括JVM#xff0c;Java类库#xff0c;运行时类库#xff0c;国际化支持#xff0c;安全管理器#xff0c;启动器等
比JVM多的内容
Java类库#xff1a;提供大量已经实…JVMJREJDK
JVM
运行Java字节码的机器
JRE
Java运行时环境包括JVMJava类库运行时类库国际化支持安全管理器启动器等
比JVM多的内容
Java类库提供大量已经实现好了功能供开发者直接使用
运行时类库为JVM提供运行时支持比如垃圾回收等
国际化支持实现多语言应用
安全管理器控制程序的安全权限保护系统安全
启动器启动JVM并执行Java程序
JDK
Java开发者工具比JRE多了编译器调试器Jar包等
比JRE多的内容
编译器(javac)将Java源码编译成class字节码文件
调试器(jdb)用于调试和测试Java程序设置断点等
Jar包工具(jar)用于对Java类库和应用程序进行打包归档
文档生成工具(javadoc)自动生成Java源代码对应的API文档
字节码
java源代码经过java编译器(javac)编译之后的文件
Java编译与解释共存是什么意思
Java代码运行经历了两个阶段
将源代码编译成字节码(中间代码)然后由JVM将字节码解释称机器码执行
编译阶段Java源代码被编译通过javac成字节码文件这些字节码可以在任何支持Java虚拟机的平台上运行使得Java具有跨平台的特性。(一次编译到处运行)
解释阶段Java虚拟机将字节码解释称机器码执行。
基本类型和包装类型
用途占用空间存储方式默认值比较方式
包装类型缓存机制
Byte Short Integer Long缓存[-128,127]
Character Boolean缓存true false
浮点数存储问题
浮点数转换成二进制存储到计算机时可能无法精确的转换成二进制导致精度丢失。