學習日記(十四)java中super和this

來源:互聯網
上載者:User

標籤:super   java   this   

    super代表的是父類、超類,用在繼承中的子類中;this代表對象本身,用在本類中。

    super訪問的是被子類隱藏的父類的屬性或被覆蓋的方法,而this訪問的是同一類中的成員。

    super調用的是父類中的某一個建構函式,而this調用的是本類中其他的建構函式。

    super和this都需要位於構造器執行體的第一行,否則編譯不通過。但是他們兩個不能同時存在,因為this要調用其他的建構函式,而其他的建構函式也有super語句,這就形成了衝突,編譯不過。

    用this可以調用一個構造器,不可以調用兩個。

    如果子類中沒有顯示調用父類的任何構造器(任何super和this的形式),系統會預設調用父類無參構造,如果父類沒有無參構造,那麼就會編譯出錯。

    super調用的父類方法或屬性,必須是public或者protect的,否則因為存取權限的問題也會出錯。

    this解決變數命名衝突和不確定性問題,例如參數名和變數名相同的時候,需要使用this來區分。

    直接用this()加上參數就可以調用對應參數的類構造器,用此方式最多可以調用一次其他構造器。

    this最大的作用就是在一個方法中調用同類中的其他方法和屬性。


學習日記(十四)java中super和this

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.