黑马程序员技术交流社区

标题: 继承的一点小问题 [打印本页]

作者: 路边小色狼    时间: 2013-9-4 20:39
标题: 继承的一点小问题
本帖最后由 路边小色狼 于 2013-9-4 20:57 编辑

class fu
{
             {
             System.out.println("父类构造代码块");
             }
        fu()
            {
           System.out.println("父类构造函数");
            }
}
class zi extends fu
          {
zi()
       {
         //隐藏super();  所以每当创建zi对象时,会运行fu的构造函数
            System.out.println("子类1");
       }
       zi(int x)
       {
  System.out.println("子类x"+x);
       }
       }
      public class Fuzi_构造函数覆盖
      {
     public static void main(String[] args)
     {
     zi z=new zi();
    zi z2=new zi(4);
     }
}
运行后答案是:

父类构造函数
子类1
父类构造代码块
父类构造函数
子类x4

对于父类构造代码块的位置很不理解,不是应该优先于父类构造函数吗?

作者: 月黑风高    时间: 2013-9-4 20:50
我运行一遍结果是:
父类构造代码块
父类构造函数
子类1
父类构造代码块
父类构造函数
子类x4
(得出的结论:你结果没看全?!)


作者: T-McGrady    时间: 2013-9-4 20:51
我的结果也是和楼上一样!
作者: lonely_zb    时间: 2013-9-4 20:52
我本地运行的结果是:
父类构造代码块
父类构造函数
子类1
父类构造代码块
父类构造函数
子类x4
和楼上一致,搂住再运行一遍建议,一步一步看...
作者: 薛鹏鹏    时间: 2013-9-4 20:55
如果您的问题已经解决
请更改分类未解决为已解决
保持队形,谢谢合作

详情参考 如何修改分类


作者: 路边小色狼    时间: 2013-9-4 20:56
lonely_zb 发表于 2013-9-4 20:52
我本地运行的结果是:
父类构造代码块
父类构造函数

我知道了,是我的myeclipse 下面输出框太小,我没往上拉,。让大家浪费时间了真不好意思




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2