好吧,这一直困扰着我。 (双关语?)
忽略变量类型,因为这不是问题
假设您有一个父类,例如带有变量 ISBN 的图书类。构造函数使用 this.ISBN = bla
设置 ISBN。
现在有一个 child 类。它有一个构造函数,可以调用其中的父构造函数。首先,构造函数是如何形成的?像这样? :
public kidsBook(ISBN, kidVariable) {
super(ISBN);
this.kidVariable = kidVariable;
}
这是正确的做法吗?如果是这样,这就引出了第二个问题:来自父类的 this.ISBN,当在子构造函数中调用父类的构造函数时,this 关键字是否引用子版本的 ISBN?
这确实让我感到困惑,我敢打赌我写它的方式表明了这种困惑。
编辑:修复了与问题无关的代码错误。
最佳答案
您走在正确的道路上。您的问题的答案是肯定的。
这是使用正确语法的完整代码
class Book {
String ISBN;
Book(String ISBN) {
this.ISBN = ISBN;
}
}
class KidsBook extends Book {
String kidsVariable;
KidsBook(String ISBN, String kidsVariable) {
super(ISBN);
this.kidsVariable = kidsVariable;
}
}
关于java - this 关键字和继承 - Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5124861/