『壹』 在java中super和this的區別
區別如下:
1、this是對當前實例的引用,而super只是一個起輔助作用的關鍵字。
2、在本類的一個構造函數中,通過this(參數);可以調用本類的另一個構造函數,而在子類的一個構造函數中,通過super(參數);可以調用父類的某一個構造函數。
3、在子類的一個實例方法中通過super.父類方法名 (參數);可以調用父類的一個方法,這樣也可以在子類的覆蓋的父類方法中調用覆蓋方法的父類版本。
4、在內部類的某個實例方法中通過外部類名.this訪問外部類的當前實例。
5、super還可用在泛型類的定義中,對泛型類的類型參數做出某種限制。
『貳』 java中this和super關鍵字代表什麼以及它們的三種作用
super關鍵字表示超(父)類的意思。this變數代表對象本身
使用super訪問父類被子類隱藏的變數或覆蓋的方法
使用this表示當前調用方法的對象引用
使用super調用基類構造函數,super應為構造函數中第一條語句
使用this調用本類另一構造函數,this應為構造函數中第一條
『叄』 java中this與super的異同
this與super的異同如下:
1. this有兩個用途,一是引用隱式參數,而是調用該類其他的構造函數,形式是this(…);
2. super也有兩個用途,一是調用超類方法,二是調用超類構造函數;
3.兩者區別在於調用構造函數的語句都只能作為另一個構造函數的第一條語句出現;區別在於構造函數給傳遞給本類其他構造函數傳遞參數要用this,給超類構造函數傳遞參數要用super。
『肆』 JAVA 中super 和this 的區別
區別如下:
1、指代上的區別
(1)super:是對當前對象中父對象的引用。
(2)This:指當前對象的參考。
2、引用對象上的區別
(1)super:直接父類中引用當前對象的成員(當基本成員和派生類具有相同成員時,用於訪問直接父類中隱藏父類中的成員數據或函數定義)。
(2)This:表示當前對象的名稱(程序中容易出現歧義的地方,應該用來表示當前對象;如果函數的成員數據與該類中成員數據的名稱相同,應用於表示成員變數名稱)。
3、調用函數上的區別
(1)super:在基類中調用構造函數(是構造函數中的第一條語句)。
(2)This:在此類中調用另一個結構化的構造函數(是構造函數中的第一條語句)。