当前位置:编程学习 > JAVA >>

实现接口..出现了错误

/*例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();
} --------------------编程问答-------------------- 两个一样的帖子。。。。。Void speak()中Voide大写的原因么? --------------------编程问答-------------------- //我复制你的代码,编绎了一下,错误提示信息如下:

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都是小写的,与父类不一致!...
}


再次编绎通过...
补充:Java ,  Java SE
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,