this和super的對比

2021-10-14 05:48:58 字數 1074 閱讀 2430

1、含義:

this關鍵字表示本類當前物件的引用

哪個物件在呼叫this所在的方法,this就表示哪個物件

super關鍵字表示本類當前物件的父類的引用

哪個物件在呼叫super所在的方法,super就表示哪個物件中的父類部分的資料

this關鍵字詳解

super關鍵字詳解

2、super和this都可以訪問成員變數

super只能訪問父類中定義的成員變數

super.成員變數名

this既可以訪問子類中定義的成員變數,也可以訪問父類中定義的成員變數

this.成員變數名

3、super和this都可以訪問成員方法

super只能訪問父類中定義的成員方法

super.成員方法名()

this既可以訪問子類中定義的成員方法,也可以訪問父類中定義的成員方法

this.成員方法名()

4.super和this都可以訪問構造方法

this():訪問本類的其它構造方法		

super():訪問父類的構造方法

記憶方法:

1)、含義不同

this表示本類物件引用

super表示子類中父類物件引用

2)、呼叫構造方法不同

this呼叫本類中其它構造方法

super只能呼叫父類構造方法

3)、呼叫成員不同

this呼叫父類和本類的成員變數和成員方法

super只能呼叫父類的成員變數和方法

使用注意事項:

this語句和super語句只能放在構造方法的第一行

構造方法中,super和this不能共存(因為都要放第一行,深層原因這裡先不講)

super和this不能出現在其它非構造方法的非靜態成員方法中

ruby 中super和super 的區別

我們用乙個示例來演示下這個機制 class parent defsay message puts message endendclass child def say message super endend child.new.say hi 輸出hi 如果parent中的say是乙個不帶引數的方法,...

super和this的用法

1.super 一般是用於子類呼叫父類的成員和子類的構造函式呼叫父類的建構函式 1.1 super.在子類的一般方法中可以用super.來呼叫父類的成員變數和成員函式,雖然父類的成員,子類的物件可以直接呼叫,但是當子類方法對父類的方法進行擴充套件時,父類中的方法通過super.可以直接呼叫,然後再擴...

Super和this的應用

super是指當前類的父類,this指的是當前物件。看下面的例子 package test1 created by lzh on 1 19 2016.public class father public father string name private void say string name ...