黑马程序员技术交流社区
标题:
求大哥哥们指教
[打印本页]
作者:
不服™け你咬我
时间:
2014-8-29 22:51
标题:
求大哥哥们指教
有这样三个类,Person、Student、GoodStudent。
其中GoodStudent继承于Student,Student继承于Person。
如何证明创建GoodStudent时是否调用了Person的构造函数?
在GoodStudent中是否能指定调用Student的哪个构造函数?
在GoodStudent中是否能指定调用Person的哪个构造函数?
作者:
孤守星空
时间:
2014-8-29 22:56
你在构造函数中加一句out.print就可以看到结果了
作者:
笑脸迷人
时间:
2014-8-29 23:01
所有构造函数都打印点不同的东西就可以去验证了~
使用super(参数列表):调用符合参数列表的父类构造函数;必须写在子类第一行
GoodStudent中是否能指定调用Person的哪个构造函数?
一般这是不能的,GoodStudent只能调用自己父类Student的构造方法,自己父类Student的构造方法又会去调用Person的构造方法,一层层调用上去的;
除非楼主你自己去编写java的源代码,期待哪一天!
作者:
黄小橙
时间:
2014-8-30 10:50
如何证明创建GoodStudent时是否调用了Person的构造函数?
public Person()
{
System.out.println("调用person()");
}
复制代码
在GoodStudent中是否能指定调用Student的哪个构造函数?
class Student
{
private String name;
public Student(){}
public Student(Stirng name)
{
this.name = name;
}
}
class GoodStudent extends Student
{
public GoodStudent(String name)
{
super(name);//这里调用的是Student类中的Student(String name)构造函数
}
}
//也就是说需要调用父类的哪个构造函数,就给super()传入相对应的参数即可。
复制代码
在GoodStudent中是否能指定调用Person的哪个构造函数?
同上,GoodStudent可以通过super调用父类Student的构造函数,Student可以通过super调用Person的构造函数。
作者:
怀念黑海岸
时间:
2014-8-30 12:29
你这个层次结构貌似不对吧,你student类都没继承person类,那么你怎么使用person类中定义的构造函数呢?
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2