Java有两种核心机制:java虚拟机(JavaVirtual Machine):垃圾收集机制(Garbage collection) 这两种机制在支持着java程序的运行 Java虚拟机(JVM) Java虚拟机(JVM)一种用于计算机设备的规范,可用不同的方式(软件或硬件)加以实现。编译虚拟机的指令集与编译微处理器的指令集非常类似。Java虚拟机包括一套字节码指令集、一组寄存器、一个栈、一个垃圾回收堆和一个存储方法域. JVM既然是虚拟机.那么他完全类似一个电脑.他有自己的cpu,内存等.当然这些都是靠软件模拟而来的. 正因为这个虚拟机的存在,才让java代码一次编译,导出运行.这个虚拟机屏蔽了底层操作系统的差别.当然.不同的操作系统对应的不同的虚拟机. Java应用程序执行的过程大概是这样的:
Java源代码经过编译器编译成.class代码.其实是我们用的javac命令编译的 然后.class代码在jvm中被解释执行,这里的java源代码只需编译一次.他的.class代码可以拿到任何装有jvm的地方运行. 垃圾收集机制(Garbagecollection) Java垃圾收集器,负责把程序运行后,不再使用的内存空间回收.这里我理解的主要是回收堆(heap)中的内存.主要是程序new出来的对象.当不用的时候,一定时间以后负责把它回收.这些都是在程序运行的时候自动进行的,不用程序员干预.这样也会让编程人员省去很多麻烦.