黑马程序员技术交流社区
标题: 理论问题,太混乱了,把头都搞大了,求高手帮忙看看该 [打印本页]
作者: 胡建伟 时间: 2013-11-7 23:21
标题: 理论问题,太混乱了,把头都搞大了,求高手帮忙看看该
有这样三个类,Person、Student、GoodStudent。
其中GoodStudent继承于Student,Student继承于Person。
如何证明创建GoodStudent时是否调用了Person的构造函数?
在GoodStudent中是否能指定调用Student的哪个构造函数?
在GoodStudent中是否能指定调用Person的哪个构造函数?
希望附上详细解释,这问题理论性太强,把自己搞蒙圈了
作者: 卑微の小幸福 时间: 2013-11-7 23:33
这时多层继承关系。嗯代码很简单。
一、你把没有构造函数内都写上不同输出语句,慢慢实验。具体代码就不写。 要是实验不出来你再留言吧!
二、能够
三、不能
作者: 零下五度的水 时间: 2013-11-7 23:33
GoodStudent时调用Person的构造函数:
在Person的构造函数里输出:这是Person的构造函数
GoodStudent中指定调用Student的哪个构造函数:
在GoodStudent的构造函数第一行写super(参数),调用哪个构造就按哪个构造的参数写实参
GoodStudent中指定调用Person的哪个构造函数
这个应该不行
作者: Sasson 时间: 2013-11-7 23:48
- class Demo {
- public static void main(String[] args) {
- GoodStudent g = new GoodStudent();
- }
- }
- class Person {
- //Person构造函数
- Person(){
- System.out.println("Person的无参构造函数");
- }
- }
- class Student extends Person{
- //Student构造函数
- Student(){
- System.out.println("Student的无参构造函数");
- }
- //Student构造函数
- Student(String name){
- super();//super();语句调用父类中的无参构造函数
- System.out.println("Student的有参构造函数");
- }
- }
- class GoodStudent extends Student{
- //GoodStudent构造函数
- GoodStudent(){
- System.out.println("GoodStudentn的无参构造函数");
- }
- //GoodStudent构造函数
- GoodStudent (String name){
- super();//super();语句调用父类中的无参构造函数
- System.out.println("GoodStudentn的有参构造函数");
- }
- }
复制代码 无法直接指定调用父类的父类的构造函数
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |