一.Java体系与特点
- JavaSE: Java Platform, Standard Edition
- 标准版:各应用平台的基础,桌面开发和低端商务应用的解决方案。
- JavaEE: Java Platform, Enterprise Edition
- 企业版:以企业为环境而开发应用程序的解决方案。
- JavaME: Java Platform, Micro Edition
- 微型版:致力于消费产品和嵌入式设备的最佳解决方案。
二.Java的特性
- 一种纯面向对象的编程语言。
- 一种与平台无关的语言。
- 一种健壮的语言,吸收了C/C++的优点。
- 较高的安全性。(自动回收垃圾GC,强制类型检查,取消指针)
三.Java跨平台原理
1.java的两种核心技术
- Java虚拟机(Java Virtual Machine)JVM
- 垃圾回收器(Garbage Collection)GC
JVM屏蔽了底层运行平台的差别,实现了”一次编译,随处运行”。
2.JVM
- 它有一个解释器组件,可以实现Java字节码和计算机操作系统之间的通信。
- 对于不同运行平台有不同的JVM。
3.垃圾回收器GC
- java语言消除了程序员回收无用内存空间的责任,c/c++中由程序员负责回收无用内存。
- JVM提供了一个系统线程,用于追踪存储空间的分配情况,检查并释放那些可以被释放的内存空间。
- GC在java程序运行过程中自动启用,程序员无法精确控制和干预。
4.JDK与JRE
JDK(Java Development Kits)–java开发工具集
- JRE(Java Runtime Environment)–java运行环境
JRE的三项主要功能
- 加载代码:由类加载器(class loader)完成
- 校验代码:由字节码校验器(byte code verifier)完成
- 执行代码:由运行时解释权(runtime interpreter)完成