java 中的多态的演示

来源:互联网 发布:mac唇膏试色最全 编辑:程序博客网 时间:2024/04/27 14:15
<span style="font-family: Arial, Helvetica, sans-serif;"></span><pre name="code" class="java">多态:所谓多态就是指一个引用(类型)在不同状态下的多种状态

<span style="font-family: Arial, Helvetica, sans-serif;">/*</span>
 * 功能:演示多态 *  *  */package com.haitao;public class Demo5 {public static void main(String[] args) {//多态/* * Cat1 cat=new Cat1();cat.cry();Dog1 dog=new Dog1();dog.cry();*//*Animal1 an=new Cat1();an.cry();an=new Dog1();an.cry();*/Master master=new Master();master.feed(new Dog1(), new Bone());master.feed(new Cat1(), new Fish());}}//主人类class Master{//给动物喂食物,使用多态,方法就可以用一个public void feed(Animal1 an,Food f){an.eat();f.showName();}}//食物类class Food{String name;public void showName(){}}class Fish extends Food{public void showName(){System.out.println("鱼");}}//骨头类class Bone extends Food{public void showName(){System.out.println("骨头");}}//动物类class Animal1{ String name; int age; public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}//动物会叫public void cry(){System.out.println("不知道怎么叫!");}public void eat(){System.out.println("不知道吃什么");}}class Cat1 extends Animal1{//猫自己叫public void cry(){System.out.println("喵喵叫");}//猫吃东西public void eat(){System.out.println("猫爱吃鱼");}}class Dog1 extends Animal1{//狗叫public void cry(){System.out.println("汪汪叫");}//狗吃东西public void eat(){System.out.println("狗爱吃骨头");}}


0 0