Java程序工作原理及Java的垃圾回收机制

本文介绍Java程序的工作原理,包括从源代码到字节码的编译过程,以及JVM如何执行字节码并实现跨平台运行。同时,还探讨了JVM的垃圾回收机制是如何自动管理内存的。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Java程序工作原理

本文所要用的专业术语的概念:

源码:用Java编写的程序。

编译器:简单讲,就是将一种语言(通常为高级语言)翻译成另一种语言(通常为低级语言)。

字节码:Java源码通过Java编译器生成的代码(但是不能被计算机直接执行)。

机器指令:可以由计算机直接执行的二进制码。

 

 

Java程序工作原理可以由下面的一张图片表述:

    在了解Java程序工作原理之前,我们首先应该了解JVM虚拟机。我们必须要知道,JVM是一个可以执行Java字节码的虚拟机进程。它的作用就相当于上图中的类装载器、字节码校验器和解释器。在不同的os中,JVM也是不同的,但是每一种平台的JVM都能识别字节码文件。也就是说,只要字节码完整无误,无论是在哪种平台生成的字节码,都可以在任何一台计算机上执行。这就是“Java一次编译,处处运行”的原因。

Java工作原理的简单描述:

  用Java编写的源程序(*.java文件)经过Java编译器生成字节码(*.class文件),这个字节码不能直接被os识别,必须经过JVM虚拟机翻译,生成os能识别的机器码才能被正常执行。

 

垃圾回收机制

  JVM提供了一个系统级线程。它会跟踪每一块被分配出去的内存空间,当它检测到被分配的空间在接下来的程序中不再被使用时,就会将该内存空间标记成垃圾。当被标记的内存空间达到一定量或者到达某个确定的时刻时,就将垃圾空间释放。这种机制缓解了编程的负担,有效避免了内存泄露的发生。如图:

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值