Java知识分享网 - 轻松学习从此开始!    

Java知识分享网

Java1234官方群25:java1234官方群17
Java1234官方群25:838462530
        
SpringBoot+SpringSecurity+Vue+ElementPlus权限系统实战课程 震撼发布        

最新Java全栈就业实战课程(免费)

springcloud分布式电商秒杀实战课程

IDEA永久激活

66套java实战课程无套路领取

锋哥开始收Java学员啦!

Python学习路线图

锋哥开始收Java学员啦!

Java2024突击面试手册(备战2024)PDF 下载


分享到:
时间:2024-02-26 10:27来源:http://www.java1234.com 作者:转载  侵权举报
Java2024突击面试手册(备战2024)
失效链接处理
Java2024突击面试手册(备战2024)PDF 下载 
 
 
相关截图:
 
主要内容:


JVM

Java 虚拟机(JVM)是运⾏ Java 字节码的虚拟机。JVM 有针对不同系统的特定实现(Windows, Linux,macOS),⽬的是使⽤相同的字节码,它们都会给出相同的结果。字节码和不同系统的 JVM 实现是 Java 语⾔“⼀次编译,随处可以运⾏”的关键所在。

JVM 并不是只有⼀种!只要满⾜ JVM 规范,每个公司、组织或者个⼈都可以开发⾃⼰的专属 JVM。 也就是说我们平时接触到的 HotSpot VM 仅仅是是 JVM 规范的⼀种实现⽽已。

除了我们平时最常⽤的 HotSpot VM 外,还有 J9 VM、Zing VM、JRockit VM 等 JVM 。维基百科上 就有常⻅ JVM 的对⽐:Comparison of Java virtual machines ,感兴趣的可以去看看。并且,你可 以在 Java SE Specifications 上找到各个版本的 JDK 对应的 JVM 规范

 

 

JDK 和 JRE

JDK 是 Java Development Kit 缩写,它是功能⻬全的 Java SDK。它拥有 JRE 所拥有的⼀切,还有 编译器(javac)和⼯具(如 javadoc 和 jdb)。它能够创建和编译程序。

JRE 是 Java 运⾏时环境。它是运⾏已编译 Java 程序所需的所有内容的集合,包括 Java 虚拟机 (JVM),Java 类库,java 命令和其他的⼀些基础构件。但是,它不能⽤于创建新程序。

如果你只是为了运⾏⼀下 Java 程序的话,那么你只需要安装 JRE 就可以了。如果你需要进⾏⼀些 Java 编程⽅⾯的⼯作,那么你就需要安装 JDK 了。但是,这不是绝对的。有时,即使您不打算在计 算机上进⾏任何 Java 开发,仍然需要安装 JDK。例如,如果要使⽤ JSP 部署 Web 应⽤程序,那么 从技术上讲,您只是在应⽤程序服务器中运⾏ Java 程序。那你为什么需要 JDK 呢?因为应⽤程序 服务器会将 JSP 转换为 Java servlet,并且需要使⽤ JDK 来编译 servlet

 

什么是字节码?采⽤字节码的好处是什么?

在 Java 中,JVM 可以理解的代码就叫做字节码(即扩展名为 .class 的⽂件),它不⾯向任何特定 的处理器,只⾯向虚拟机。Java 语⾔通过字节码的⽅式,在⼀定程度上解决了传统解释型语⾔执⾏ 效率低的问题,同时⼜保留了解释型语⾔可移植的特点。所以, Java 程序运⾏时相对来说还是⾼效 的(不过,和 C++,Rust,Go 等语⾔还是有⼀定差距的),⽽且,由于字节码并不针对⼀种特定的 机器,因此,Java 程序⽆须重新编译便可在多种不同操作系统的计算机上运⾏

 


 
------分隔线----------------------------

锋哥公众号


锋哥微信


关注公众号
【Java资料站】
回复 666
获取 
66套java
从菜鸡到大神
项目实战课程

锋哥推荐