当前位置: 代码迷 >> 汇编语言 >> 子类可以承袭父类的构造代码吗?这是为什么
  详细解决方案

子类可以承袭父类的构造代码吗?这是为什么

热度:259   发布时间:2016-05-02 04:56:10.0
子类可以继承父类的构造代码吗?这是为什么
class Animal 
{{System.out.println("I am a mumber of the world");}
String name;
String habitat;
int number;
Animal(String name){this.name = name;}
Animal(String name,String habitat){
this.name = name;
this.habitat = habitat;
}
Animal(String name,String habitat,int number){

this.name = name; 
this.habitat = habitat;
this.number = number;
}


}

class Cat extends Animal 
{
void jiao(){System.out.println("miaomiao");}

}
class Enter
{public static void main(String[] args)
{
Cat mao=new Cat();
mao("mao");}
}
下面是报错

E:\myjava\day7>javac Animal.java
Animal.java:21: 错误: 对于Animal(), 找不到合适的构造器
class Cat extends Animal
^
    构造器 Animal.Animal(String,String,int)不适用
      (实际参数列表和形式参数列表长度不同)
    构造器 Animal.Animal(String,String)不适用
      (实际参数列表和形式参数列表长度不同)
    构造器 Animal.Animal(String)不适用
      (实际参数列表和形式参数列表长度不同)
Animal.java:29: 错误: 无法将类 Cat中的构造器 Cat应用到给定类型;
        Cat mao=new Cat("mao");}
                ^
  需要: 没有参数
  找到: String
  原因: 实际参数列表和形式参数列表长度不同
2 个错误

E:\myjava\day7>
报错

------解决方案--------------------
你自己试验一下。实在不明白可以看看java的相关资料,很简单的问题。不要忙了半天却没有找到真正的原因,或者得出错误的结论,那就糟糕了。

上面的编译环境是:
ADT 21.1
VisualStudio 2005 
JRE 1.6
  相关解决方案