子類物件建立之前,會先產生父類物件。然後在父類物件基礎之上,擴充套件子類特有的屬性和方法。
所以子類物件中包含完整的父類物件,就可以重用父類中定義的方法和屬性。
子類物件建立之前,需要通過super()呼叫父類的構造方法,產生父類物件。
如果子類構造方法中沒書寫super(),這這時,虛擬機會自動呼叫super()。
如果父類中沒有無參構造方法,子類必須通過super(引數)顯示呼叫。
引用型別的變數,如果修飾為final,表示該變數的值不能變化。也就是不能再指向別的物件。
final 關鍵字
可以修飾類、方法、變數。
修飾類,表示該類不能被子類所繼承,修飾方法表示該類不能被子類重寫,修飾變數表示該變數的內容不能改變。
public 該類或非該類均可訪問
private 只有該類可以訪問
protected 該類及其子類的成員可以訪問,用乙個包中的類也可以訪問。
預設 相同資料報中的類可以訪問。 私有屬性只有在本類中使用。
訪問修飾符:
訪問許可權
private成員
預設成員
protected成員
public成員
同一類中
是 是 是
是 同一類包中的其他類
否 是
是 是
不同包中的子類
否
否 是
是 該類及非該類均可訪問
否
否
否 是
封裝:按照資訊隱藏的原則,將資料組織在一起。
封裝有兩個特點:
資訊隱藏
資訊集合
私有屬性+get/set方法和公有屬性的區別:
私有屬性不能被直接訪問,只能通公有的get方法(訪問器)和set方法(修改器)來進行設定值和取值。這樣一旦刪掉get或set方法,可以將該屬性做成唯讀或只寫屬性。公有屬性做不到。
可以通過修改器在設定屬性時,做資料合法性的驗證。但公有屬性做不到。
public class 類
static
稱為靜態初始化塊。在類載入時執行,也就是在產生物件之前執行,而且只執行一次。
內部類:
在乙個類中,再定義乙個類,這稱為內部類。
內部類相當於外部類的屬性,內部類物件的產生必須依賴於外部類物件。
內部類所產生的class檔案:
外部類類名$內部類名.class
J2SE 物件導向總結
物件導向,即oo。我將物件導向的內容分為兩部分,一部分是物件導向的思想精髓,另一部分是物件導向在機器記憶體中的具體實現。下面是我的總結 檢視導圖中更詳細內容 這裡,我們重點對比總結以下內容 類和物件 1.從定義上 類是乙個概念,是乙個模板,規定了一類具有共同特點的物件。物件是是乙個例項,是類例項化的...
C 個人總結2 類和物件
類和結構都是建立物件的模板。類是儲存在堆上的引用型別,結構是儲存在棧上的值型別。類中的資料和函式稱為類成員。資料成員包含字段 常量和事件。函式成員包括方法 屬性 建構函式 終結器 運算子以及索引器。方法中的引數可以是值傳遞也可以是引用傳遞。值型別資料是值傳遞,引用型別資料是引用傳遞。傳遞引用的效率更...
Struts2返回JSON物件總結
b 1.匯入jsonplugin包 b struts2.1.8匯入struts2 json plugin 2.1.8.1.jar struts2 lib下有 struts2.2.1匯入struts2 json plugin 2.2.1.jar struts2 lib下有 b 2.struts.xml...