1. 程式人生 > >《Java程式設計思想》讀書筆記2.一切都是物件

《Java程式設計思想》讀書筆記2.一切都是物件

第2章 一切都是物件

2.1 用引用操縱物件

String s; //引用
String s = "asdf"; //物件

2.2 必須由你建立所有物件

String s = new String("asdf");

儲存到什麼地方:
1) 暫存器 不能直接控制
2) 堆疊 儲存物件引用、基本型別
3) 堆 存放Java物件
4) 常量儲存 存放常量值
5) 非RAM儲存 存放流物件和持久化物件等

特例:基本型別
int, float 32bits
包裝器類:Character
高精度數字:BigIntegerBigDecimal

Java中的陣列
確保陣列被初始化,而且有範圍檢查

2.3 永遠不需要銷燬物件

作用域
變數只可用於作用域結束之前

物件的作用域
引用在作用域終點消失,物件仍在
垃圾回收器,消除記憶體洩露

2.4 建立新的資料型別:類

class ATypeName {}
ATypeName a = new ATypeName();

欄位和方法
或稱 資料成員和成員函式
objectReference.member

基本成員預設值
0 基本資料型別變數作為類的成員
若作為區域性變數不初始化會編譯錯誤

2.5 方法、引數和返回值
方法名和引數列表唯一標識某個方法
方法只有通過物件才能被呼叫

int x = a.f();

傳送訊息給物件 訊息是f() 物件是a

引數列表
傳遞物件的引用,基本資料型別除外

2.6 構建一個Java程式

名字可見性
避免相同名字衝突,反過來使用域名
e.g. net.mindview.utility.foibles

運用其他構件
相同檔案 - 類在檔案後面才定義也可使用
不同檔案 - import java.util.*;

static關鍵字
static欄位 不同物件共享同一欄位
static方法 不建立物件就可呼叫,如main()

2.7 你的第一個Java程式
import 額外類,java.lang會被自動匯入
System.out 靜態物件

編譯和執行
JDK javac java
ant 自動構建工具

2.8 註釋和嵌入式文件
/* */ //

註釋文件
程式碼同文檔放同一個檔案
javadoc

語法
/** javadoc命令 */
獨立文件標籤 @***
行內文件標籤 {@***}
javadoc只為publicprotected成員進行文件註釋
生成HTML檔案

嵌入式HTML
例如在文件註釋加入<em><ol><li>

一些標籤示例
@see 引用其他類
{@link package.class#member label}
@since @param @return @throws @deprecated

2.9 編碼風格
類名首字母大寫,識別符號首字母小寫
駝峰風格

2.10 總結
……