在Java中,super是一個關鍵字,用于訪問父類中的屬性、方法或構造函數。以下是關于super關鍵字的用法:
訪問父類中的屬性或方法: 使用super關鍵字可以訪問父類中被子類所隱藏的屬性或方法。例如,如果子類和父類中都有一個同名的屬性或方法,那么在子類中使用super關鍵字可以訪問父類中的屬性或方法。
例如,如果父類中有一個名為foo()的方法,子類也定義了一個名為foo()的方法,可以使用super.foo()來調用父類中的foo()方法。
在子類構造函數中調用父類的構造函數: 子類構造函數可以使用super關鍵字來調用父類的構造函數。這通常在子類構造函數需要初始化父類中的成員變量或執行父類的一些操作時使用。
例如,如果父類中有一個帶參數的構造函數,子類構造函數可以使用super關鍵字調用該構造函數,并傳遞相應的參數。這樣可以確保父類中的成員變量得到正確的初始化。
下面是一個示例代碼,演示了如何使用super關鍵字:
在上面的示例中,Dog類繼承自Animal類。Dog類的構造函數使用了super關鍵字來調用Animal類的構造函數,而makeSound()方法中使用了super關鍵字來調用Animal類中的makeSound()方法。