黑马程序员技术交流社区
标题:
多层继承中构造函数的调用问题????
[打印本页]
作者:
skyname
时间:
2014-3-10 21:14
标题:
多层继承中构造函数的调用问题????
class Worker
{
Worker()
{
System.out.println("调用了Worker的构造函数");
}
Worker(String str)
{
System.out.println("调用了Worker的带参数的构造函数:"+str);
}
}
class Manager extends Worker
{
Manager()
{
System.out.println("调用了Manager的没有参数的构造函数");
}
Manager(String str)
{
System.out.println("调用了Manager的带参数的构造函数:"+str);
}
}
class Chairman extends Manager
{
Chairman()
{
super("Yes!");
System.out.println("调用了Chairman的没有参数的构造函数");
}
}
class ConstructorUse
{
public static void main(String[] args)
{
Chairman cs=new Chairman();
}
}
java不支持多继承,但却是支持多层继承的,Manager继承了Worker,Chairman继承了Manager,那在Chairman中能不能指定调用Worker的任意构造函数呢??该怎么做?不会是super.super吧····
作者:
李猛
时间:
2014-3-10 22:11
貌似不可以吧 首先是你那样做没有太大意义, 如果你需要使用里面的成员方法你可以通过子类去调用的
作者:
为你而去
时间:
2014-3-10 23:13
可以在Manager类中的构造函数第一行指定调用Worker的构造函数,这样在Chairman中通过指定调用其父类构造函数,父类构造函数再调用父类构造函数,便能达到想要结果
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2