【发布时间】:2021-05-08 09:06:22
【问题描述】:
我有一个名为“parents”的父类和一个名为“child”的子类,它扩展了父类。如果子类和父类都具有相同的参数但具有不同的行为构造函数,那么如果我创建子类对象,它将自动调用我不想要的父类构造函数。这是怎么可能的。
例如
class parents
{
parents()
{
System.out.println("hello, i am
parents class constructor");
}
}
class child extends parents
{
child()
{
System.out.println("hello, i am
child class constructor");
}
}
class main
{
public static void
main(String[] args)
{
child c = new child();
}
}
现在,
输出是.....
hello, i am parents class constructor
hello, i am child class constructor
但我只想...
hello, i am child class constructor
表示只运行子类构造函数而不是父类。
怎么可能……
【问题讨论】:
-
不,这在标准 Java 中是不可能的。并且有充分的理由。如果您不希望孩子表现得像父类,那么它不应该是父类。它应该是一个实例变量,甚至根本不存在。
-
如果答案对您有帮助,请考虑接受。它有帮助。
标签: java oop inheritance constructor parent-child