第二章 一切都是对象
一.用引用操作对象
正如用遥控器(引用)控制电视机(对象)
拥有一个引用并不一定需要一个对象与它关联。
创建一个string引用:string s(s没有对象)
String s="abcd" 创建一个引用并初始化。
二.所用对象必须有你建立
1、存储到那里
寄存器:你不能用程序控制
Stack:存放基本类型的数据或对象的reference,但对象本身不存放在stack中,而是存放在heap中
Heap:存放new创建的对象
Static storage:存放static定义的静态成员
Constant storage:存放常量
Non-ram:存放磁盘,硬盘中
2、基本类型
Boolean char byte short int long float double void
基本类型存放在stack中,存放的数据;
对象的引用存放在stack中,但是对象本身存放在heap中
3、java中数组
当你产生某个存储对象的数组时,真正产生的其实是存储reference的数组。引数组建立后,其中的每一个reference都会被自动设为null,表示“不指向任何对象”。
三.永远不要销毁对象
1、作用域
{
Int x=12
{
Int y=9
}
}
X和y 的作用域仅限本作用域结束之前
2、对象的作用域
{
String s = new string("s is a string ")
}
New创建的对象,可以存活于作用域之外
如何消除内存泄露现象
Java有一个垃圾回收器,只要创建对象,一旦不需要,java回收机制就会自动释放对象的内存空间。
四.创建新的数据类型:类
1、字段和方法
Class A{
Int i ;
Double d;
Boolean b;
}
A a = new A();
如何引用对象的成员
a.i=1;
A.d=1.1;
A.b=false;
2、基本成员默认值
基本类型 | 默认值 |
boolean | false |
char | null |
byte | Byte 0 |
short | Short 0 |
int | 0 |
long | 0L |
float | 0.0f |
double | 0.0d |
五.方法,参数和返回值
六.构建一个java程序
七.你的对一个java程序
八.注释和文档
1、多行注释 /** */
2、单行注释//
Javadoc 提取java注释的工具
嵌入式html 主要为了代码格式化
Java中一些标签的含义:
@see :引用其他类
@author: 作者信息
@since 制定最早使用版本
@param:方法的参数列表标示符
@return:描述返回值含义
@throws: 抛出异常类无歧义名字
@deprecated :旧特征由新特征取代
九.编码风格
规定:首字母大写,且每个内部单词首字母大写(不可用下划线分隔)