第二章 一切都是对象
2017-04-06 03:56
288 查看
2.1 用引用操纵对象
操纵的标识符实际上是对象的一个“引用”。拥有一个引用,并不一定需要有一个对象与它关联。
String s;
上述代码只创建了一个引用,并不是对象。
2.2必须由你创建所有对象
一旦创建了一个引用,就希望它能与一个新的对象想关联,通常使用new操作符来实现这一目的,new的关键字意思是“给我一个对象。”String s =new String("hello word!");
上述代码不仅表示“给我一个新对象”,而且通过提供一个初始化的字符串(hello word!),给出了怎样产生这个String的信息。
2.2.1 存储位置
寄存器,与cpu最接近,最快的存储器,数量有限,java中不能直接控制。栈,数据存储区。
堆,对象存储区
常量存储区(如ROM)。
非RAM存储。
2.2.2 基本类型
特点:非引用类型,直接存储“值”,并置于栈中。基本类型 | 大 小 | 最小值 | 最大值 | 包装器类型 | 默认值 |
---|---|---|---|---|---|
boolean | - | - | - | Boolean | false |
char | 16 bits | Unicode 0 | Unicode 216-1 | Character | null |
byte | 8 bits | -128 | +127 | Byte | 0 |
short | 16 bits | -215 | +215-1 | Short | 0 |
int | 32 bits | -2 31 | +231-1 | Integer | 0 |
long | 64 bits | -263 | +263-1 | Long | 0L |
float | 32 bits | IEEE754 | IEEE754 | Float | 0.0f |
double | 64 bits | IEEE754 | IEEE754 | Double | 0.0d |
void | - | - | - | Void | - |
2.2.3 数组
创建一个数组对象实际上就是创建 了一个引用数组,并且每个引用(既数组元素)都会自动被初始化为一个null值,一旦java看到null,就知道这个引用还没有指向某个对象,在使用任何引用之前,必须为其指定一个对象,如果试图使用一个还是null的引用,在运行时将会报错。基本数据类型的数组,会将该数组所占的内存全部置零。
2.3 永远不要销毁对象
用new创建的java对象,可以存活于作用于之外。{ String s= new String("hello word!"); }引用s在作用域大括号结尾处就消失了,但是s指向的String对象仍继续占据内存空间,在上面的代码中,无法在这个作用域外访问该对象,因为s引用已超出了作用域的范围,但可以通过传递或者复制对象的引用,可以在作用域外访问该对象。
由new创建的对象,只要需要,就会一直保存下去,不需要,会自动被垃圾回收器回收。
2.5 方法和返回值
方法名和参数列表(合起来被称为“方法签名”)唯一的标识出某个方法。参数传递实际上是传递对象的引用(除基本数据类型除外)。
相关文章推荐
- 第二章 一切都是对象
- thinking in java 阅读笔记 第二章 一切都是对象
- thinking in java 笔记 思维导图 第二章一切都是对象
- java编程思想读书笔记-第二章一切都是对象
- Thinking In Java 第二章 一切都是对象
- Java编程思想第四版读书笔记——第二章 一切都是对象
- Thinking in Java 笔记(第二章 一切都是对象)
- thinking in java 阅读笔记 第二章 一切都是对象
- day3 part1:《Thinking in Java》笔记第二章---一切都是对象
- 一切都是对象(《Java编程思想》第二章总结)
- 《Thinking in Java》学习笔记——第二章:一切都是对象
- Java编程思想读书笔记-第二章 一切都是对象
- Java编程思想笔记——第二章 一切都是对象
- 第二章:一切都是对象
- thinking in java 阅读笔记 第二章 一切都是对象
- thinking in java 阅读笔记 第二章 一切都是对象
- 【Java】《Java编程思想》笔记(含练习题答案代码)-第二章 一切都是对象
- 《Java 编程思想》--第二章:一切都是对象
- 第二章 一切都是对象
- 第二章 一切都是对象