A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

35黑马币
class Parent
{
Parent()
{
       System.out.println("parent");
   }
}
public class Child extends Parent
{
Child(String s)
               {
System.out.println(s);
      }
public staticvoid main(String[] args)
{
          Child child = new Child("child");
      }
}

最佳答案

查看完整内容

运行结果是parent ,child。child继承parent,child的构造函数第一行会默认有一个super()语句引用父类的构造函数,所以以上实际就是父类子类的构造函数的先后运行

15 个回复

倒序浏览
运行结果是parent ,child。child继承parent,child的构造函数第一行会默认有一个super()语句引用父类的构造函数,所以以上实际就是父类子类的构造函数的先后运行
回复 使用道具 举报
楼上正解!
回复 使用道具 举报
结果是:parent
              child
先运行父类的构造函数,再运行子类的构造函数。而析构函数则相反,先先运行子类的构造函数,再运行负类的构造函数
回复 使用道具 举报
parent
child.
子类继承父类,在创建子类对象的时候会默认调用父类的构造函数。
回复 使用道具 举报
parent child
回复 使用道具 举报
parent,child呀,基础测试题里出现过的
回复 使用道具 举报

结果是:parent
              child
回复 使用道具 举报
二楼正解 有个隐含的super()
回复 使用道具 举报
子类的实例化过程:
子类实例化时会先调用父类的构造方法。
父类中无默认构造方法时,子类中必须显示的调用父类的构造方法。
super表示父类的引用。必须放在第一个
so:

parent
child

虽然知道楼主骗回复的但还是回答你。
回复 使用道具 举报

谢谢啊!!!
回复 使用道具 举报
继承关系,,,默认Child类中有一个super(),,先执行,,这时先执行父类的构造代码块,,,输出parent,,,,再执行子类,,输出child
回复 使用道具 举报
825176857 发表于 2015-7-5 00:19
子类的实例化过程:
子类实例化时会先调用父类的构造方法。
父类中无默认构造方法时,子类中必须显示的调用 ...

小哥,你。。。。。
回复 使用道具 举报
825176857 发表于 2015-7-5 00:19
子类的实例化过程:
子类实例化时会先调用父类的构造方法。
父类中无默认构造方法时,子类中必须显示的调用 ...

智商不错,情商太低
回复 使用道具 举报
parent
child
回复 使用道具 举报
本帖最后由 徐鹏辰 于 2015-7-10 10:38 编辑

/**父类*/
class Parent
{
     Parent()/*构造函数,类名与函数名相同*/
    {
          System.out.println("parent");/*输出语句:输出 parent*/
    }
}/**extends:继承*/
public class Child extends Parent
{
    //super();隐藏的语句,super()调用父类的空参数构造函数
    Child(String s)
    {
        System.out.println(s);/*输出传入的字符串s*/
    }}
/**主函数,即入口*/
public staticvoid main(String[] args)
{
          Child child = new Child("child");/*创建子类对象。*/
}


/*对象调用 读到super(),调用父类空参数的构造函数输出parent;再读子类含参数的函数,并执行输出传入的参数child
输出结果:parent
                  child
*/


回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马