Core Java2 6th 摘要(8)
摘要: 每個(gè)組件都有三要素:
* 內(nèi)容,例如,按鈕的狀態(tài)(是否按下)或者文本框中的文本
* 外觀顯示(顏色、尺寸等)
* 行為(對(duì)事件的反應(yīng))
閱讀全文
Core Java2 6th 摘要(7)
摘要: AWT中事件處理機(jī)制的概覽:
* 一個(gè)監(jiān)聽器對(duì)象是一個(gè)實(shí)現(xiàn)了專門的監(jiān)聽器接口的類的實(shí)例。
* 一個(gè)事件源是一個(gè)能夠注冊監(jiān)聽器對(duì)象并向它們發(fā)送事件對(duì)象的對(duì)象。
* 事件發(fā)生時(shí),事件源會(huì)把事件對(duì)象發(fā)生給所有的注冊監(jiān)聽器。
* 監(jiān)聽器對(duì)象隨后會(huì)使用事件對(duì)象中的信息來決定對(duì)事件的反應(yīng)。
閱讀全文
Core Java2 6th 摘要(6)
摘要: 內(nèi)部類是定義在其他類內(nèi)部的類。使用內(nèi)部類的原因有以下四個(gè):
* 內(nèi)部類對(duì)象能夠訪問創(chuàng)建它的對(duì)象的實(shí)現(xiàn)——包括那些私有數(shù)據(jù);
* 內(nèi)部類能夠隱藏起來,不為同一包中的其他類所見;
* 匿名內(nèi)部類可以方便地定義運(yùn)行時(shí)回調(diào);
* 使用內(nèi)部類在編寫事件驅(qū)動(dòng)的程序時(shí)用起來很方便。
閱讀全文
Core Java2 6th 摘要(5)
摘要: 設(shè)計(jì)繼承的建議:
1. 把通用字段和操作放到超類中;
2. 不要使用受保護(hù)字段;
3. 使用繼承來模型化"is-a"關(guān)系;
4. 除非所有繼承的方法都有意義,否則不要使用繼承;
5. 使用多態(tài),而非類型信息;
6. 不要濫用反射.
閱讀全文
Core Java2 6th 摘要(4)
摘要: 編寫完美equals方法的建議:
1. 顯示參數(shù)命名為otherObject
2. 測試this同otherObject是否是同一個(gè)對(duì)象:
if(this == otherObject) return ture;
3. 測試otherObject是否為null。如果是,就返回false。這個(gè)測試是必需的:if(otherObject == null) return false;
4. 測試this和otherObject是否屬于同一個(gè)類。這項(xiàng)測試是“對(duì)稱性規(guī)則”所要求的。 if(getClass() != otherObject.getClass()) return false;
5. 把otherObject的類型轉(zhuǎn)換為你的類型所屬的類型。
ClassName other = (ClassName)otherObject;
6. 最后比較所有字段。使用==比較基本類型字段,使用equals比較對(duì)象字段。
閱讀全文
Core Java摘要(2)
摘要: 類設(shè)計(jì)的技巧:
1. 一定要讓數(shù)據(jù)私有。
2. 一定要初始化數(shù)據(jù)。
3. 不要在類中過多使用基本類型。
4. 并非所有字段都需要獨(dú)自的字段訪問方法和更改方法。
5. 為類定義使用標(biāo)準(zhǔn)格式。
6. 分解職責(zé)太多的類。
7. 讓類和方法的名字反映它們的職責(zé)。
閱讀全文
Core Java摘要(1)
摘要: 要測試兩個(gè)字符串是否相等,可以使用equals方法。如果字符串s和t相同,那么表達(dá)式s.equals(t)將返回true,否則返回false。
不要使用==操作符來檢測兩個(gè)字符相等與否!它只能判斷兩個(gè)字符串是否存儲(chǔ)在同一位置。
閱讀全文