this():
當前類的物件,super父類物件。
super():
在子類訪問父類的成員和行為,必須受類繼承規則的約束
而this他代表當前物件
,當然所有的資源都可以訪問.
在建構函式中,如果第一行沒有寫
super(),
編譯器會自動插入
.但是如果父類沒有不帶引數的建構函式
,或這個函式被私有化了(用
private
修飾).
此時你必須加入對父類的例項化構造.
/**
* 父類
*@authoradministrator *
*/publicclasssueprclass
//必須定義乙個有引數的 當然如果不被繼承是不用定義的
sueprclass(inti) }
/**
* 子類
*@authoradministrator *
*/publicclasssonclassextendssueprclass
staticintk;
//當然也可以這樣 k必須是靜態的 不然會報錯
sonclass() }
而this就沒有這個要求
,因為它本身就進行例項化的構造
.而在方法中super和
this
使用的方法就差不多了
.只不過
super
要考慮是否能訪問其父類的資源
.
this 與 super 的區別
問題是 我不僅僅要輸出區域性範圍的num,還要輸出本類成員範圍的num。怎麼辦呢?我還想要輸出父類成員範圍的num。怎麼辦呢?如果有乙個東西和this相似,但是可以直接訪問父類的資料就好了。恭喜你,這個關鍵字是存在的 super。this和super的區別?分別是什麼呢?this代表本類對應的引用。...
JAVA this與super的用法區別
1 super 引數 呼叫基類中的某乙個建構函式 應該為建構函式中的第一條語句 2 this 引數 呼叫本類中另一種形成的建構函式 應該為建構函式中的第一條語句 3 super 它引用當前物件的直接父類中的成員 用來訪問直接父類中被隱藏的父類中成員資料或函式,基類與派生類中有相同成員定義時如 sup...
Super的使用, this 與super
super 關鍵字可在子類中訪問父類的方法,也可以訪問父類的屬性 其實和this關鍵字聯絡起來對比理解就明白了 乙個三層結構的例子 b繼承a,那麼在例項化b的時候,a和b哪個構造方法先執行呢?結果 先執行a的構造方法,然後才執行b的構造方法,因為有了父類才會有子類 在jvm的物理結構 在堆中 先構造...