接触
java也将近三周了,从
java的底层运行机制,到GUI界面设计,都是完全靠代码编程。学习
java之前使用vb.net开发,同样的是面向对象的开发,vb.net把很多底层类的的编程和界面设计都封装的特别好。我们只是简单地为自己使用。而
java可以更灵活,依靠强大的api文档,可以完全按照自己的意愿编程。使用
java编程才是“真正的编程”。vb.net是跨语言平台,而
java是跨平台的一种编程语言。
java之所以灵活,高效,
安全。是因为有自己的独立的运行机制,最核心的两种机制-虚拟机(Virtual Machine)和垃圾收集机制(Grabage Collection).
核心机制-虚拟机(virtual machine)
java虚拟机(JVM)一种用于计算机设备的规范,可用不同的方式(
软件或
硬件)加以实现。好比一个简单地操作系统,有着自己独立的
cpu,
硬件 、堆栈、寄存器等,还具有相应的指令系统。
JVM有自己的编译器和解释器,通过一次编译,再根据不同的系统解释(一边解释一边执行)为不同的目标文件(字节码),使得在不同的系统平台上直接执行,实现一次编译,到处运行。所以不同的操作系统对应着不同的虚拟机。
49_3710_b760af590792ab4.gif[删除]
编译器(
javac)将程序编译成字节代码的Class文件,然后在装有JDK(
java Development Kit
java环境运行)通过解释器(
java)编译执行。
核心机制-垃圾收集机制(Grabage Collection)
其一,消除了程序员在编程过程中手动回收
内存的责任。其二:实现了完全自动回收内存。其三根据程序执行时内存空间的分配不同,如下图中对象(new)或变量(成员变量)等等的生命期不同,
java提供了系统机线程跟踪内存空间的分配情况,自动完成内存的释放。
java内存的分配大致如下图
49_3710_5b5625bb4d8e16a.gif[删除]