当前位置 : 主页 > 编程语言 > java >

大数据必学Java基础(二):Java核心机制

来源:互联网 收集:自由互联 发布时间:2022-07-17
Java核心机制 一、垃圾收集机制 垃圾收集的目的在除不再使用的对象,当对象建立的时候垃圾收集期,就开始监控对象的动态情况,垃圾收集主要是对内存的释放。创建对象的时候申请

Java核心机制

一、垃圾收集机制

垃圾收集的目的在除不再使用的对象,当对象建立的时候垃圾收集期,就开始监控对象的动态情况,垃圾收集主要是对内存的释放。创建对象的时候申请一个空间

  • 不再使用的内存空间应回收---》垃圾收集;
  • Java消除了程序员回收无用内存空间的职责;提供一种系统级线程跟踪

存储空间的分配情况。在JVM的空闲时,检查并释放可被释放的存储器空间;相比c++,开发人员负责要自己收回无用内存。

  • 垃圾收集在Java程序运行过程中自动进行,程序员无法精确控制和干预;
  • GC的自动回收,提高了内存空间的利用效率,也提高了编程人员的效率,很大程度上减少了因为没有释放空间而导致的内存泄露。

后续更高级的内容介绍:

1.垃圾收集器有几种

2.垃圾收集器底层原理剖析

3.垃圾收集器算法,优化

二、跨平台原理

JAVA跨平台原理的解释:

大数据必学Java基础(二):Java核心机制_java

大数据必学Java基础(二):Java核心机制_垃圾收集_02


C语言的跨平台解释:  

大数据必学Java基础(二):Java核心机制_跨平台_03

大数据必学Java基础(二):Java核心机制_java_04


总结

JVM(Java Virtual Machine)就是一个虚拟的用于执行bytecode字节码的”虚拟计算机”。他也定义了指令集、寄存器集、结构栈、垃圾收集堆、内存区域。JVM负责将Java字节码解释运行,边解释边运行,这样,速度就会受到一定的影响。

不同的操作系统有不同的虚拟机。Java 虚拟机机制屏蔽了底层运行平台的差别,实现了“一次编译,随处运行”。 Java虚拟机是实现跨平台的核心机制。如图所示:

大数据必学Java基础(二):Java核心机制_跨平台_05

大数据必学Java基础(二):Java核心机制_跨平台_06


我们说的语言跨平台是编译后的文件跨平台,而不是源程序跨平台。

接下来我们再比较下两种方式的差异:

第一,C语言是编译执行的,编译器与平台相关,编译生成的可执行文件与平台相关;

第二,Java是解释执行的,编译为中间码的编译器与平台无关,编译生成的中间码也与平台无关(一次编译,到处运行),中间码再由解释器解释执行,解释器是与平台相关的,也就是不同的平台需要不同的解释器。


网友评论