JVM(java virtual Machine)
java虚拟机:负责解释执行字节码文件。
可以这样理解:JVM就好比一台虚拟的计算机,拥有指令集并使用不同的存储区域。它负责执行指令,还管理数据、内存和寄存器。
当使用java编译器编译java程序时,生成了与平台无关的字节码文件(*.class),这些字节码不面向任何具体的平台,只面向JVM。不同平台上的JVM不同,但是所有平台上的JVM想编译器提供了相同的接口。JVM是java程序跨平台的关键部分。
shikeyirenyi
java源文件的命名规则
java源文件的后缀必须是 .java
通常情况下,Java程序源文件的主文件名是可以任意的。当java程序源代码里有定义public类,则必须文件名与该public类名一致。且一个Java源文件中只能定义一个public类。
推荐:
1、一个Java源文件只定义一个类,不同的类使用不同的源文件定义。
2、让Java源文件的主文件名与该源文件中定义的public类同名。
java main方法
若需要Java解释器直接运行一个类,则这个Java类必须要有main()方法。这个main方法必须使用public和static来修饰,必须使用void声明该方法的返回值,而且该方法的参数类型只能是一个字符串数组。而不能是其他形式的参数。public和static位置可以互换。
(GC)垃圾回收机制
Java程序的内存分配和回收是通过有JRE在后台自动进行的。 JRE会负责回收那些不再使用的内存,这种机制被成为垃圾回收(Garbage Collection,简称GC)。通常JRE会提供一个后台线程来进行检测和控制,一般都是在CPU空闲或者内存不足的时候进行垃圾回收。
Java的堆内存是一个运行时数据区,用以保存类的实例(对象),Java虚拟机的堆内存中存储着正在远行的应用程序所建立的所有对象,,一般来说,堆内存的回收由垃圾回收来负责,所有的JVM实现都有一个由垃圾回收器管理的堆内存。垃圾回收是一种动态存储管理技术,它自动地释放不再被程序引用的对象。有特定的垃圾回收算法。
垃圾回收也可以清除内存记录碎片。由于创建对象和垃圾回收器释放丢弃对象所占的内存空间,内存会出现碎片。碎片整理将所占用的堆内存移到堆的一端,JVM将整理出的内存分配给新的对象。
来源:CSDN
作者:施施001
链接:https://blog.csdn.net/fuzhaolan0551/article/details/103806537