/*例5-11实现接口*/
public class InterfaceImplements{
public static void main(String[] args){
Tomcat tomcat=new Tomcat();
makeSpeak(tomcat);       //自动类型转换,多态


Cat cat=new Cat();
makeSpeak(cat);          //自动类型转换,多态
}
public static void makeSpeak(Animal animal){
animal.speak();
}
}class Tomcat extends Cat{
public void speak(){                       //覆盖类Cat中的方法
System.out.println("Tomcat Meow...");
}
}class Cat implements Animal{
int age=AGE;                                  //使用接口中定义的常量赋值
public void speak(){                          //实现接口中的抽象方法
System.out.println("Cat Meow...age:"+age);
}
}interface Animal{
int AGE=1;
Void speak();
}

解决方案 »

  1.   

    两个一样的帖子。。Void speak()中Voide大写的原因么?
      

  2.   

    //我复制你的代码,编绎了一下,错误提示信息如下:Cat 不是抽象的,并且未覆盖 Animal 中的抽象方法 speak()Cat 中的 speak() 无法实现 Animal 中的 speak();正在尝试使用不兼容的返回类型Tomcat 中的 speak() 无法实现 Animal 中的 speak();正在尝试使用不兼容的返回类型//根据提示,将你以下的代码
    interface Animal{
    int AGE=1;
    Void speak();
    }改为
    interface Animal{
    int AGE=1;
    void speak(); //注意你原来的代码为Void,即v是大写的,将其改为小写即可
    //出错的原因,你的子类中的v都是小写的,与父类不一致!...
    }再次编绎通过...