一、java知识浅知
1、Java语言的特点
(1)面向对象的编程语言;
(2)跨平台性,不受计算机硬件和操作系统的约束,一次编译,到处运行;
(2)健壮型开发语言;
2、Java语言的核心机制
(1)Java虚拟机(Java Virtual Machine)
Java的运行周期分为 编译期 和 运行期。
●在编译期Java的编译器会将包含Java代码的文件,即.Java文件编译成为.class字节码文件;
●在运行期,Java虚拟机(JVM)将.class字节码文件解释成为计算机的机器语言。
从而实现Java跨平台性,可以说Java的跨平台性完全得益于Java虚拟机(JVM)的应用。
内存回收机制(Garbage Collection)
(2)Java内存回收机制(Garbage Collection,GC)
在Java中,内存会被自动进行垃圾回收和释放,使用者不需要也不能精确干预内存回收。 提到内存,就要说到Java中的内存,Java中内存分为栈内存和堆内存。
●栈内存:在方法定义中的一些基本类型和引用变量,Java会自动在栈内存中进行分配,就好像客栈、宾馆一样可以入住,一旦变量超过变量的作用范围,垃圾回收机制(GC)会自动释放内存,就好像你离开了客栈、宾馆时要进行退房一样。
●堆内存:是通过Java中的new关键字创建的变量,变量的定义在堆内存中,堆内存中存储了变量的地址标记,它会在程序运行中被使用。当变量没有引用指向它的时候,它才会被定义为垃圾,虽然不会再被使用,但是依旧占用着内存。垃圾回收机制(GC)会在一个不确定的时间才会进行回收。
3、JDK和JRE
●JDK:Java Development Kit,Java开发者工具包,是为开发者使用的;
●JRE:Java Runtime Environment,Java运行环境,是为使用者准备的;
所以,JDK包含JRE,JRE包含Java虚拟机(JVM)。