多态性的使用举例

简介: 多态性的使用举例

多态性的使用举例:

package com.day0125_3;
//多态性的使用举例:
public class AnimalTest {
  public static void main(String[] args) {
    AnimalTest test=new AnimalTest ();
    test.func(new Dog());
    test.func(new Cat());
  }
  public void func(Animal animal) {//Animal animal=new Dog();
    animal.eat();
    animal.shout();
  }
  //如果没有多态性
//  public void func(Dog dog) {
//    dog.eat();
//    dog.shout();
//  }
//  
//  public void func(Cat cat) {
//    cat.eat();
//    cat.shout();
//  }
}
class Animal{
  public void eat() {
    System.out.println("动物:进食");
  }
  public void shout() {
    System.out.println("动物:叫");
  }
}
class Dog extends Animal{
  public void eat() {
    System.out.println("狗吃骨头");
  }
  public void shout() {
    System.out.println("汪!汪!汪!");
  }
}
class Cat extends Animal{
  public void eat() {
    System.out.println("猫吃鱼");
  }
  public void shout() {
    System.out.println("喵!喵!喵!");
  }
}
相关文章
|
6月前
多态的具体用法
多态的具体用法
35 1
|
6月前
|
数据安全/隐私保护
类与对象\类的定义
类与对象\类的定义
29 0
|
C语言 C++
<c++> 类与对象 | 面向对象 | 访问说明符 | 类的声明 | 创建类
<c++> 类与对象 | 面向对象 | 访问说明符 | 类的声明 | 创建类
100 0
动态绑定,多态(带你从本质了解多态)(下)
动态绑定,多态(带你从本质了解多态)
|
C语言 C++
习题10.3 分别定义Teacher类和Cadre类,采用多重继承方式由这两个类派生出新类Teacher_Cadre类。
习题10.3 分别定义Teacher类和Cadre类,采用多重继承方式由这两个类派生出新类Teacher_Cadre类。
|
编译器 C++
【C++】多态(万字详解) —— 条件 | 虚函数重写 | 抽象类 | 多态的原理(上)
【C++】多态(万字详解) —— 条件 | 虚函数重写 | 抽象类 | 多态的原理(上)
168 0
【C++】多态(万字详解) —— 条件 | 虚函数重写 | 抽象类 | 多态的原理(上)
|
Linux C++
【C++】多态(万字详解) —— 条件 | 虚函数重写 | 抽象类 | 多态的原理(下)
【C++】多态(万字详解) —— 条件 | 虚函数重写 | 抽象类 | 多态的原理(下)
145 0
【C++】多态(万字详解) —— 条件 | 虚函数重写 | 抽象类 | 多态的原理(下)
|
安全 Java 程序员
Java面向对象之组合与多态
本篇文章是上一篇包和继承文章的后续篇,针对面向对象编程的组合、多态、抽象类与接口方面内容的总结分享,希望各位小主们认真浏览,一定会受益多多哟
123 0
Java面向对象之组合与多态