Java中this()和super()


Java關鍵字this只能用於方法體中。this只能在類中的非靜態方法中使用,靜態方法和靜態的代碼塊中絕對不能出現this,並且this只和特定的對象關聯,而不和類關聯,同一個類的不同對象有不同的this。

this

1.this三大作用:

    this調用屬性、調用方法、利用this表示當前對象。

2.this的用法:

  (1).普通的直接引用

  這種就不用講了,this相當於是指向當前對象本身。

  (2).形參與成員名字重名,用this來區分:

3.引用構造函數

super

super可以理解為是指向自己超(父)類對象的一個指針,而這個超類指的是離自己最近的一個父類。

super也有三種用法:

1.普通的直接引用

  與this類似,super相當於是指向當前對象的父類,這樣就可以用super.xxx來引用父類的成員。

2.子類中的成員變量或方法與父類中的成員變量或方法同名

3.引用構造函數

  super(參數):調用父類中的某一個構造函數(應該為構造函數中的第一條語句)。
  this(參數):調用本類中另一種形式的構造函數(應該為構造函數中的第一條語句)。

 

tips:

調用super()必須寫在子類構造方法的第一行,否則編譯不通過。每個子類構造方法的第一條語句,都是隱含地調用super(),如果父類沒有這種形式的構造函數,那么在編譯的時候就會報錯

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM