Java自写的一个小程序
设计一个动物(Animal)抽象类,在此基础上派生出动物猫类Cat、狗类Dog
和公鸡类Cock,要求如下:
(1) Animal类有一个抽象方法eat(),无返回值。
(2) 类Cat继承了Animal类,重写了eat()方法,定义了Cat特有吃的食物,并且有自己的工作方法,抓老鼠;
(3) 狗类Dog继承了Animal类,重写了eat()方法,定义了Dog特有吃的食物,并且有自己的工作方法,看家;
(4) 公鸡类Cock继承了Animal类,重写了eat()方法,定义了Cock特有吃的食物,并且有自己的工作方法,打鸣儿;
(5) 在测试类中通过一个生成一个随机数和选择结构语句来判定创建的一个向上转型对象(Cat、Dog和Cock对象)的那个对象运行,并调用它的eat()方法;再创建一个静态方法show(Animal a) ,根据传入的对象来判断一个对象是否为这个类的哪个实例,调用该实例的自己特有的方法,实现多态。
package third3.Chapter;
import java.util.Random;
abstract class Animal{
public abstract void eat();
}
class Cat extends Animal{
public void eat() {
System.out.println("猫喜欢吃鱼");
}
public void