Super關鍵字詳解

2021-10-10 02:32:04 字數 1593 閱讀 7787

可以使用super關鍵字來訪問父類的資料成員或字段。 如果父類和子類具有相同的字段,則使用super來指定為父類資料成員或字段。

animal和dog都有乙個共同的屬性:color。 如果我們列印color屬性,它將預設列印當前類的顏色。 要訪問父屬性,需要使用super關鍵字指定

super關鍵字也可以用於呼叫父類方法。 如果子類包含與父類相同的方法,則應使用super關鍵字指定父類的方法。 換句話說,如果方法被覆蓋就可以使用 super 關鍵字來指定父類方法。

animal和dog兩個類都有eat()方法,如果要呼叫dog類中的eat()方法,它將預設呼叫dog類的eat()方法,因為當前類的優先順序比父類的高。所以要呼叫父類方法,需要使用super關鍵字指定。

super關鍵字也可以用於呼叫父類建構函式。下面來看乙個簡單的例子

我們知道,如果沒有建構函式,編譯器會自動提供預設建構函式。 但是,它還新增了super()作為第乙個語句。

下面是super關鍵字的另乙個例子,這裡super()由編譯器隱式提供。

super實際使用示例

下面來看看super關鍵字的實際用法。 在這裡,emp類繼承了person類,所以person的所有屬性都將預設繼承到emp。 要初始化所有的屬性,可使用子類的父類建構函式。 這樣,我們重用了父類的建構函式。

super關鍵字詳解

super注意點 1.super呼叫父類的構造方法,必須在構造方法的第乙個 2.super必須只能出現在子類的方法或者構造方法中!3.super和this不能同時呼叫構造方法!super和this的區別 代表的物件不同 this 本身呼叫者這個物件 super 代表父類物件的應用 前提 this 麼...

super關鍵字詳解1

package test5 super父類中的name,父類中的m1 super是用在子類中還是主函式中?主函式沒有繼承關係,不能用super,因為並沒有父類和子類關係存在,所以只能用在子類中 1 super不是引用型別,super中儲存不是記憶體位址,指向的不是父類物件,super代表的是子類物件...

this關鍵字和super關鍵字

this關鍵字和super關鍵字都必須放在構造方法的第一行,所有兩個關鍵字不能同時存在,任選其一即可,只需保證子類的所有構造方法呼叫父類的構造方法即可 this關鍵字的應用 this關鍵字用於區分區域性變數和成員變數的同名問題 有this關鍵字的是成員變數,或者是誰呼叫我,訪問的就是誰 this關鍵...