java中多态的例子

作者:活力源 | 创建时间: 2023-06-26
通过例子来理解java多态!...
java中多态的例子

操作方法

abstract class Animal { abstract void eat(); } class Pig extends Animal { public void eat() { System.out.println("饲料"); } public static void sleep() { System.out.println("睡觉"); } } class Dog extends Animal { public void eat() { System.out.println("骨头"); } public static void Pao() { System.out.println("跑"); } } class Cat extends Animal { public void eat() { System.out.println("吃鱼"); } public static void cachmouth() { System.out.println("抓老鼠"); } }

class test { public static void main(String[] ats) { //eatfunction(new Cat()); //eatfunction(new Dog()); //eatfunction(new Pig()); //引用类型的强制转化! //Animal a =  new Dog();//类型提升! //Dog d=(Dog)a; //d.Pao(); //d.eat(); eatfunction(new Dog()); eatfunction(new Cat()); eatfunction(new Pig()); } public static void eatfunction(Animal a) { a.eat(); if(a instanceof Cat) { Cat c=(Cat)a; c.cachmouth(); } else if(a instanceof Dog) { Dog d =(Dog)a; d.Pao(); } else if(a instanceof Pig) { Pig p =(Pig)a; p.sleep(); } } }

多态的好处是大大提高了函数的扩展性!

温馨提示

必须是类与类之间要有关系!
存在覆盖!
点击展开全文

更多推荐