Java關鍵字this只能用於方法體中。this只能在類中的非靜態方法中使用,靜態方法和靜態的代碼塊中絕對不能出現this,而且this只和特定的對象關聯,而不和類關聯,同一個類的不一樣對象有不一樣的this。函數
this
1.this三大做用:this
this調用屬性、調用方法、利用this表示當前對象。spa
2.this的用法:指針
(1).普通的直接引用對象
這種就不用講了,this至關因而指向當前對象自己。ip
(2).形參與成員名字重名,用this來區分:utf-8
3.引用構造函數get
super
super能夠理解爲是指向本身超(父)類對象的一個指針,而這個超類指的是離本身最近的一個父類。編譯
super也有三種用法:class
1.普通的直接引用
與this相似,super至關因而指向當前對象的父類,這樣就能夠用super.xxx來引用父類的成員。
2.子類中的成員變量或方法與父類中的成員變量或方法同名
3.引用構造函數
super(參數):調用父類中的某一個構造函數(應該爲構造函數中的第一條語句)。
this(參數):調用本類中另外一種形式的構造函數(應該爲構造函數中的第一條語句)。
tips:
調用super()必須寫在子類構造方法的第一行,不然編譯不經過。每一個子類構造方法的第一條語句,都是隱含地調用super(),若是父類沒有這種形式的構造函數,那麼在編譯的時候就會報錯