1、子類可以使用父類public protected的方法和成員。子類可以過載父類的方法,但是方法名和引數列表相同,當返回型別不同的方法在子類中會出現編譯期錯誤。由8.4節中允許
犯規協變返回型別,即子型別。
2、基類中private可視為基類的結構,對外無任何影響,所以在子類中出現乙個方法名和引數列表相同的名字是可以的,視為子類的新方法。
3、final對於基本型是值不變,對於引用型是指引用不變,即不能更改該引用指向別的物件,引用指向的物件是可變的
4、final方法不能繼承,final類不能繼承。
5、若b繼承a,則在訪問b的main方法時,在執行任何語句之前,先載入a類(初始化靜態域),然後載入b(初始化靜態域),然後執行其他語句,如果要建立b物件,則應先為a和
b分配記憶體,並把記憶體設為預設值0;接著先建立a物件,包括成員變數初始化然後是執行構造器,接下來才是建立b物件,先成員變數初始化然後執行構造器。
6、預設構造器指無參構造器
7、組合就是在b類中有其他類的成員變數,選擇是組合還是繼承時,判斷標準是是否需要向上轉型,如果必須要用到向上轉型則使用繼承,否則不建議使用。
第七章 復用類
class cleaner public cleaner private string s cleaner s a public void dilute public void scrub public string tostring public static void main string a...
第七章 復用類
有乙個類a,aa繼承a,類繼承圖將父類放在最頂部,子類放在下方,a a new aa 此處aa自動向上轉成了a型別。根據類繼承圖可以進行理解向上的這個關係。修飾類 表示該類不能被繼承 修飾方法 表示方法不能被重寫 修飾變數 表示變數只能一次賦值以後值不能被修改 常量 final和static fin...
Thinking in Java 第七章 復用類
1 組合 在新有類中產生現有類的物件,復用了現有程式 的功能。2 繼承 按照現有類的形式來建立新類。3 4 域物件初始化位置 4.1在定義物件的地方,比構造器更早 4.2在類的構造器中 4.3在正要使用這些物件之前 5 當建立乙個匯出類的物件時,該物件包含了乙個基類的子物件。建構函式的呼叫是從基類 ...