JAVA面向对象 - 多态

所谓多态,就是指一个引用(类型)在不同情况下的多种状态。你也可以这样理解,多态是指通过指向父类的指针,来调用在不同子类中实现的方法。

注意事项

Ⅰ.java允许父类的引用变量引用它的子类的实例(对象),这种转换时自动完成的。

Ⅱ...........

实例

 1 package com.beekc.www;
 2 
 3 public class Beekc {
 4     public static void main(String[] args) {
 5         Master master = new Master();
 6         master.food(new Dog(),new Bone());
 7         master.food(new Cat(),new Fish());
 8     }
 9 }
10 
11 //主人
12 class Master
13 {
14     public void food(Animal an, Food f)
15     {
16         an.cry();
17         f.showName();
18     }
19 }
20 
21 //食物
22 class Food
23 {
24     public String Name;
25     public void showName()
26     {
27 
28     }
29 }
30 
31 class Fish extends Food
32 {
33     public void showName()
34     {
35         System.out.println("爱吃鱼");
36     }
37 }
38 
39 class Bone extends Food
40 {
41     public void showName()
42     {
43         System.out.println("爱吃骨头");
44     }
45 }
46 
47 //动物
48 class Animal
49 {
50     private int age;
51     private String name;
52     public void cry()
53     {
54         System.out.println("我是动物,系统不知道怎么叫!");
55     }
56 }
57 
58 class Cat extends Animal
59 {
60     public void cry()
61     {
62         System.out.println("猫猫,喵喵叫~");
63     }
64 }
65 
66 class Dog extends Animal
67 {
68     public void cry()
69     {
70         System.out.println("狗狗,汪汪叫~");
71     }
72 }

运行结果

猜你喜欢

转载自www.cnblogs.com/beekc/p/12329559.html