第2章 一切都是对象
2.1 用句柄操纵对象
句柄,即“引用”。创建句柄,要记得初始化。
2.2 所有对象都必须创建
2.2.1 保存到什么地方
1.寄存器:最快的保存区域,因为它位于和其他所有保存方式不同的地方:处理器内部。
2.堆栈:驻留于常规 RAM(随机访问存储器)区域,但可通过它的“堆栈指针”获得处理的直接支持。
堆栈指针若向下移,会创建新的内存;若向上移,则会释放那些内存。
速度仅次于寄存器。
创建程序时,Java 编译器必须准确地知道堆栈内保存的所有数据的“长度”以及“存在时间”。这是由于它必须生成相应的代码,以便向上和向下移动指针。这一限制无疑影响了程序的灵活性。
Java 对象并不放到其中
3.堆:编译器不必知道要从堆里分配多少存储空间,也不必知道存储的数据要在堆里停留多长的时间。因此,用堆保存数据时会得到更大的灵活性。
为达到这种灵活性,必然会付出一定的代价:在堆里分配存储空间时会花掉更长的时间!
4.静态存储:static,程序运行期间,静态存储的数据将随时等候调用。可用 static 关键字指出一个对象的特定元素是静态的。
5.常数存储:常数值通常直接置于程序代码内部。
6.非RAM存储。
2 . 2 . 2 特殊情况:主要类型
byte short int long float double char boolean
主数据类型也拥有自己的“封装器”类。如Character C = new Character('c');
2 . 2 . 3 J a v a 的数组
2 . 3 绝对不要清除对象
2 . 3 . 1 作用域
2 . 3 . 2 对象的作用域
作者:凌晨六点半
出处:http://www.cnblogs.com/sunnyDream/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接,否则保留追究法律责任的权利。
如果您认为这篇文章还不错或者有所收获,您可以通过右边的“打赏”功能 打赏我一杯咖啡【物质支持】,也可以点击右下角的【好文要顶】按钮【精神支持】,因为这两种支持都是我继续写作,分享的最大动力!