因此,我理解super()呼叫父類的建構式,并且我已經多次使用它。然而,我從未在子類的建構式之外使用過它。是否可以在子類建構式之外呼叫super()?因為super只有在連接到派生類時才有意義,它能否被視為派生類的成員函式?我最初在嘗試使用物件呼叫super時遇到了這個問題(只是在做實驗)。
是否可以這樣做?
是否可以這樣做?
class Animal {
動物() {
System.out.println("動物的建構式被呼叫。")。
}
}
class Puppy extends Animal {
Puppy() {
System.out.println("Puppy的建構式被呼叫。"/span>)。
}
}
public class Test {
public static void main(String[] args){
Puppy pupper = new Puppy() 。
pupper.super()。
}
uj5u.com熱心網友回復:
不,這是不可能的,不可能在建構式體之外。
ExplicitConstructorInvocation。 [TypeArguments] this ( [ArgumentList] ) 。 [TypeArguments] super ( [ArgumentList] ) ; 運算式名稱。[TypeArguments] super ([ArgumentList]) ; 初級 . [TypeArguments] super ([ArgumentList] ) 。
在這里,在建構式體中(§8.8.7),super()是允許的,但在其他地方卻不允許。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/331115.html
標籤:
