首页 > 代码库 > 第二章:一切皆对象。(一)
第二章:一切皆对象。(一)
2.1、用引用操作对象。
1.一个形象的比喻:在java中,一切皆对象。但是操纵的标示符实际上是对象的一个“引用”(reference)。可以想象成一个遥控器(引用)操纵电视机(对象)。
想要换频道或者调整音量,实际操纵的是遥控器(引用),再由遥控器来操纵电视机(对象)。
2.有5个不同的地方可以存储数据:
1、寄存器:这是最快的存储区。它位于处理器内部。寄存器的数量极其有限。根据需求进行分配,不能直接控制。
2、堆栈:位于通用RAM(随即访问存储器)中,堆栈指针若向下移动,则分配新的内存;若向上移动,释放内存。创建程序时,java系统必须知道存储在堆栈内所有项
的确切生命周期,以便上下移动堆栈指针。
3、堆:一种通用的内存池(也位于RAM区),用于存放所有的java对象。当new一个对象的时候,会自动在堆里进行存储分配。 用堆进行存储分配和清理可能比堆栈进行存储分配需要更多的时间。
4、常量存储:存放在ROM(只读存储器)。字符串池就是这样,所有字面常量字符串和具有字符串值的常量表达式会置于特殊的静态存储区中。
5、非RAM存储:流对象和持久化对象。
3.基本类型:置于堆栈中,更加高效,占用存储空间不变,保证java的可移植性的一个原因。
基本类型 | 大小 | 最小值 | 最大值 | 包装器 |
boolean | - | - | - | Boolean |
char | 16bit | Unicode 0 | Unicode 216-1 | Character |
byte | 8bit | -128 | 127 | Byte |
short | 16bit | -215 | 215-1 | Short |
int | 32bit | -231 | 231-1 | Integer |
long | 64bit | -263 | 263-1 | Long |
float | 32bit | IEEE754 | IEEE754 | Float |
double | 64bit | IEEE754 | IEEE754 | Double |
void | - | - | - | Void |
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。