java体系结构包括四个独立但相关的技术:
1、java程序设计语言
2、java class文件格式
3、java应用编程接口
4、java虚拟机
java面向网络的缺陷:
内存管理(垃圾回收器,回收垃圾的时间不一定,而且无法判断是否开始收集垃圾)
线程调度 (虚拟机规范解释含糊不清)
java的平台无关性:
由java创建的可执行二进制程序,能不加改变的运行于多个平台
(语言、class文件、虚拟机、API共同作用的后果)
语言:基本类型的值域和范围是自己决定的。而C、C++的值域是由占位宽度决定的,不同平台的字长不一样
class:可在任何平台上创建、也可被任何平台的java虚拟机装入并运行
java“虚拟” :由一个规范来定义的抽象计算机
抽象规范
一个具体的实现
一个运行中的虚拟机实例
java程序在运行时创建的所有实例类或数组都放在同一个堆中。(只有一个堆)
垃圾回收:自动回收不再被运行的程序引用的对象所占用的内存,也有可能回收正在使用的对象。
垃圾回收机制:用于在空闲时间以不定时的方式动态回收无任何引用的对象占据的内存空间。