第六章:復(fù)用類
1、toString是一個非凡的方法,當(dāng)編譯器需要一個String而你的類是一個對象的時候,編譯器會自動調(diào)用toString方法,當(dāng)然,你得保證你的類里面有這個方法。
(chap6,P2)
2、往每個類中都寫一個main函數(shù),會使調(diào)試方便得多。
(chap6,P6)
3、假如基類中沒有默認的(即沒有參數(shù)的)構(gòu)造函數(shù)而有有參數(shù)的構(gòu)造函數(shù),則在子類的構(gòu)造函數(shù)中必須調(diào)用基類的構(gòu)造函數(shù),否則編譯會出錯。也就是說,當(dāng)子類實例化的時候
虛擬機自動去調(diào)用基類的默認的構(gòu)造函數(shù),除非在子類的構(gòu)造函數(shù)中顯式地調(diào)用了基類的非默認的構(gòu)造函數(shù)。
(chap6,P9)
4、編譯器會強制將你基類的構(gòu)造函數(shù)的調(diào)用放在派生類的構(gòu)造函數(shù)的最前面。也就是說,在它之前不能有任何東西。
(chap6,P9)
5、雖然編譯器會強制你對基類進行初始化,并且會要求你在構(gòu)造函數(shù)的開始部分完成初始化,但它不會檢查你是不是進行了成員對象的初始化。
(chap6,P11)
6、合成還是繼續(xù)?一般來說,合成用于新類要使用舊類的功能,而不是其接口的場合。也就是說,把對象嵌進去,用它實現(xiàn)新類的功能,但是用戶看到的是新累的接口,而不是嵌進去
的對象的接口。
(chap6,P16)
7、一般情況下,應(yīng)該將類的成員數(shù)據(jù)定義成PRivate。
(chap6,P16)
8、上傳(upcasting)總是安全的。
(chap6,P19)
9、private方法都隱含有final的意思。由于你不能訪問private的方法,因此你也不能復(fù)寫它。你可以給一個private方法加final修飾符,但這樣做什么意義也沒有。
(chap6,P24)
10、9中提到的不能復(fù)寫private函數(shù),是指,該函數(shù)在基類中是private的,并且在派生類中也是private的。假如在派生類中不是private的,則可以復(fù)寫。
(chap6,P24)
新聞熱點
疑難解答