您的位置:首页 > 编程语言 > Java开发

Thinking in java 学习笔记 001

2015-07-08 15:21 525 查看
一切都是对象

2.1 用引用操纵对象

Java中只用reference 作为操纵的标识符,可以将其想象成用遥控器(引用)来操纵电视机(对象)实际上背后用的是指针。

创建一个String引用并初始化:

String s;

S = “Hello World!”;

String s = “Hello World!”;

2.2 必须由你创建所有对象

用new操作符来实现引用与对象的关联。

String s = new String(“asdf”);

2.2.1 存储到什么地方

1) 寄存器

处于处理器内部的不能直接控制的最快的储存区

2) 堆栈 stack

存取速度快,效率高,因为这里要求被存储的数据有具体大小和存活时间限制,使用弹性小,这里一般存储的是我们的对象引用,而对象是不存储于其中

3)堆 heap

一种通用的内存池,用于存放所有的java对象。编译器不必知道存储的数据在堆中存活时间和大小,提高灵活性的同时,存储分配和清理时间增多。

4)常量存储

常量值通常直接存放在程序代码内部。

5)非RAM存储

2.2.2 特例:基本类型

不用new来创建变量,变量直接存储值,置于栈中

2.2.3 java中的数组

Java确保数组都被初始化,并且不能在它的范围外访问。创建一个数组对象时,就是创建一个引用数组,并且每个引用都会自动被初始为一个特定值(拥有关键字null)。安全性和效率较高。

2.3 永远不需要销毁对象

作用域由花括号的位置确定,决定了在其内定义的变量名的可见性和生命周期。

Java有垃圾回收器,用于监视用new创建的所有对象,并辨别那些不会再被引用的对象,定期释放这些对象的内存空间。

2.4 创建新的数据类型:类

一切都是对象,而class决定了对象的属性。

class Person { /* class body goes here */ }

Person p = new Person();

2.4.1 字段与方法

字段(数据成员) 方法(成员函数)

如果字段是对某个对象的引用,那么必须初始化该引用,以便使其与一个实际的对象相关联。

2.5 方法、参数和返回值

方法的组成:名称、参数、返回值和方法体

方法名和参数列表唯一地标识出某种方法。

Int storage(String s) {

returns.length() * 2;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: