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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

class Base {
private String name;
public Base(){
name="base";
}
public void mention(){
System.out.println(name);}
}
class Chila extends Base{
public Chila (){
  super("Chila");
  name="bb";}
}
public class Text{
public static void main(String[] args){
Chila c=new Chila();
c.mention();}
}
此程序错在那里了啊

5 个回复

倒序浏览
Chila类中super("Chila")错了,因为在Base类中不存在与之符合的构造函数。应该在Base类中写一个构造函数public Base(String name).
回复 使用道具 举报
lily15 发表于 2015-3-30 20:33
Chila类中super("Chila")错了,因为在Base类中不存在与之符合的构造函数。应该在Base类中写一个构造函数pub ...

哦,   懂了
回复 使用道具 举报
public class Text {
       
        public static void main(String[] args) {
                Chila c = new Chila();
                c.mention();
        }
}

class Base {
         String name;

        public Base() {
                name = "base";
        }

        public Base(String string) {
                // TODO Auto-generated constructor stub
        }

        public void mention() {
                System.out.println(name);
        }
}

class Chila extends Base {
        public Chila() {
                super("Chila");
                name = "bb";
        }
}

改成这样就好了,在Base类里构造一个public Base(String string)方法,然后把在Base类的私有成员变量的关键字private去掉,你就能在下面定义name=“bb”了
回复 使用道具 举报
写代码最好按格式写,可以用myeclipse或者eclipse写,写完后格式化代码块一下
回复 使用道具 举报
哥们!写代码时最好加点注释,可以让别人读懂你的代码也能看懂你的思路。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马