package T3; public class AnimalTest public static void mainString args Animal rabbit = new RabbitPeter white mammal; Animal frog = new FrogKermit green non-mammal;
可能是因为缺少某些类或者没有正确导入包。请确认已经正确导入Animal、Rabbit和Frog类所在的包。
如果已经导入了包,但是还是报错,可以尝试修改AnimalTest类的代码如下:
package T3;
public class AnimalTest { public static void main(String[] args) { Animal rabbit = new Rabbit("Peter", "white", "mammal"); Animal frog = new Frog("Kermit", "green", "non-mammal");
rabbit.eat();
rabbit.shout();
System.out.println(rabbit.toString());
frog.eat();
frog.shout();
((Frog) frog).swim(); // 强制类型转换为Frog类型,调用swim方法
System.out.println(frog.toString());
}
}
主要修改了两个地方:
-
System.out.println(rabbit)改为System.out.println(rabbit.toString()),因为Animal类没有重写toString方法,需要调用Object类的toString方法才能输出对象的信息。
-
frog.swim()改为((Frog) frog).swim(),因为Animal类没有swim方法,需要将frog强制类型转换为Frog类型才能调用swim方法。
原文地址: https://www.cveoy.top/t/topic/bu4s 著作权归作者所有。请勿转载和采集!