Java多态

描述

运用 多态,设计动物 、狗、青蛙、饲养员类以及游泳 接口

题目

运用 Java 多态,设计动物 、狗、青蛙、饲养员类以及游泳接口,类以及接口设计如下:

游泳接口:

​ 功能:游泳。

动物类:

​ 行为:喝水、吃饭。

狗类:

​ 行为:喝水、吃骨头、狗刨式游泳。

青蛙类:

​ 行为:喝水、吃虫子、蛙泳式游泳。

题目解决思路

  1. 创建游泳接口。
  2. 创建动物类,实现喝水、吃饭(抽象)方法。
  3. 创建狗类,实现吃饭(啃骨头)方法,实现游泳接口。
  4. 创建青蛙类,实现吃饭(吃虫子)方法,实现游泳接口。
  5. 创建饲养员类,实现饲养方法。

代码具体实现

游泳接口代码:

public interface Swim { void Swimming(); }

动物类代码:

public abstract class Animal { public void drinking(){ System.out.println("喝水"); } public abstract void eat(); }

狗类代码:

public class Dog extends Animal implements Swim{ @Override public void eat() { System.out.println("狗啃骨头"); } @Override public void Swimming() { System.out.println("狗会狗刨式游泳"); } }

青蛙类代码:

public class Frog extends Animal implements Swim{ @Override public void eat() { System.out.println("青蛙吃虫子"); } @Override public void Swimming() { System.out.println("青蛙会蛙泳式游泳"); } }

饲养员类代码:

public class People { // 喂养方法 public void feed(Animal animal){ if (animal instanceof Dog){ System.out.println("饲养狗:"); animal.drinking(); animal.eat(); ((Dog) animal).Swimming(); }else if(animal instanceof Frog){ System.out.println("饲养青蛙:"); animal.drinking(); animal.eat(); ((Frog) animal).Swimming(); } } }

测试类代码:

public class Test { public static void main(String[] args) { System.out.println("嗨客网(www.haicoder.net)\n"); // 创建饲养员对象 People people = new People(); // 创建狗对象 Dog dog = new Dog(); // 创建青蛙对象 Frog frog = new Frog(); // 饲养动物 people.feed(dog); System.out.println(); people.feed(frog); } }

运行结果如下图:

06_java多态.png

以上案例,运用 Java 多态,设计动物 、狗、青蛙、饲养员类以及游泳接口。