黑马程序员技术交流社区

标题: 求助 关于子父继承构造函数的问题-急! [打印本页]

作者: 刘宁    时间: 2012-3-13 12:37
标题: 求助 关于子父继承构造函数的问题-急!
class Fu
{
        Fu()
        {
                System.out.println("fu run");
        }
}

class Zi extends Fu
{
        Zi()
        {
                //super();它调用的是父类构造函数 this();调用本类构造函数
                System.out.println("zi run");
        }
        Zi(int x);
        {
                System.out.println("zi..."+x);
        }
}
class ExtendsDemo4
{
        public static void main(String[] args)
        {
                Zi z = new Zi();

                Zi z1 = new Zi(4);
        }
}
为什么这段代码一直报错?错误的原因
ExtendsDemo4.java:25: 错误: 缺少方法主体, 或声明抽象
        Zi(int x);
             ^
ExtendsDemo4.java:27: 错误: 找不到符号
                System.out.println("zi..."+x);
                                                               ^
这行代码和毕老师的一模一样 毕老师能运行,我报错。求救。同样的问题在前边也遇到过一次,那个至今没解决。
作者: 马胜平    时间: 2012-3-13 12:43
        Zi(int x);   这么大的分号没看见啊
        {
                System.out.println("zi..."+x);
        }
作者: 吴璞玉    时间: 2012-3-13 12:47
你那个 Zi(int x);后面怎么能加;呢,这样的话后面的大括号中的就不会作为构造函数的方法体了,而加;之后又不声明它为抽象函数,自然是会报错,删掉分号就好了
作者: lucky_xingxing    时间: 2012-3-13 12:48
    Zi(int x);
         {
                 System.out.println("zi..."+x);
         }
第二个构造方法的参数后面多了一个分号啊 大哥
作者: 黑马张平    时间: 2012-3-13 12:48
呵呵。多了   ;     这个东西 Zi(int x); 缺少方法主体, 或声明抽象。

作者: 刘宁    时间: 2012-3-13 13:01
疯了 疯了,谢谢大家,我明白了,刚才纠结的不行了,这个论坛真好,遇到问题,就有朋友指出错误。谢谢谢谢




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