| 
 
| 本帖最后由 潘成旺 于 2015-2-28 13:53 编辑 
 我这段代码:
 class Animal{
 private String name;
 private int age;
 public Animal(){}
 public Animal(String name,int age){
 this.name = name;
 this.age = age;
 }
 public void setName(String name){
 this.name = name;
 }
 public String getName(){
 return name;
 }
 public void setAge(int age){
 this.age = age;
 }
 public int getAge(){
 return age;
 }
 public void eat(){
 System.out.println("我会吃饭");
 }
 }
 class Dog extends Animal{
 public Dog(){}
 public Dog(String name,int age){
 super.setName() = name;
 super.setAge() = age;
 }
 public void run(){
 System.out.println("我还会跑步");
 }
 }
 class Cat extends Animal{
 public Cat(){}
 public Cat(String name,int age){
 super.setName() = name;
 super.setAge() = age;
 }
 public void zhuoMiCang(){
 System.out.println("我还会捉迷藏");
 }
 }
 class AnimalDemo {
 public static void main(String[] args){
 Dog d = new Dog();
 d.setName("狗");
 d.setAge(20);
 System.out.println("姓名:"+d.getName()+" 年龄:"+d.getAge()+"岁");
 d.eat();
 d.run();
 System.out.println("------------");
 Dog dd = new Dog("狗",20);
 System.out.println("姓名:"+dd.getName()+" 年龄:"+dd.getAge()+"岁");
 dd.eat();
 dd.run();
 System.out.println("------------");
 Cat c = new Cat();
 c.setName("猫");
 c.setAge(17);
 System.out.println("姓名:"+c.getName()+" 年龄:"+c.getAge()+"岁");
 c.eat();
 c.zhuoMiCang();
 System.out.println("------------");
 Cat cc = new Cat("猫",17);
 System.out.println("姓名:"+cc.getName()+" 年龄:"+cc.getAge()+"岁");
 cc.eat();
 cc.zhuoMiCang();
 System.out.println("------------");
 }
 }
 
 这样写报错:
 ---------- javac ----------
 AnimalDemo.java:28: 错误: 无法将类 Animal中的方法 setName应用到给定类型;
 super.setName() ;
 ^
 需要: String
 找到: 没有参数
 原因: 实际参数列表和形式参数列表长度不同
 AnimalDemo.java:29: 错误: 无法将类 Animal中的方法 setAge应用到给定类型;
 super.setAge() ;
 ^
 需要: int
 找到: 没有参数
 原因: 实际参数列表和形式参数列表长度不同
 AnimalDemo.java:38: 错误: 无法将类 Animal中的方法 setName应用到给定类型;
 super.setName() ;
 ^
 需要: String
 找到: 没有参数
 原因: 实际参数列表和形式参数列表长度不同
 AnimalDemo.java:39: 错误: 无法将类 Animal中的方法 setAge应用到给定类型;
 super.setAge() ;
 ^
 需要: int
 找到: 没有参数
 原因: 实际参数列表和形式参数列表长度不同
 4 个错误
 
 输出完成 (耗时 1 秒) - 正常终止
 
 ---------------------------------------------------------------------------------------------
 然后我回头看视频里面的代码
 那个          super.setName() = name;
 super.setAge() = age;
 写成        super(name,age);
 这样就没错了,这是为啥呀;搞蒙了。。。。
 
 
 | 
 |