多态程序

来源:互联网 发布:中国网络移动经纪人 编辑:程序博客网 时间:2024/06/06 21:02

源文件:Fruit.java

public class Fruit {public void shouMe(){   System.out.println("我是水果");}}

在定义几个Fruit的子类:

public class Apple extends Fruit{public void shouMe(){System.out.println("我是苹果");}
<pre name="code" class="java">public class Banana extends Fruit{public void shouMe(){System.out.println("我是香蕉");}}

public class Pear extends Fruit{    public void shouMe(){    System.out.println("我是梨");    }}
定义一个测试类:Test.java

public class Test {//定义一个有参方法  调用Fruit的shouMe()方法public static void shouMe(Fruit a){a.shouMe();}public static void main(String[] args) {        //new 一个Apple(),<span style="font-family: Arial, Helvetica, sans-serif;">把Apple传个shouMe();</span>Fruit a=new Apple();shouMe(a);        //new 一个Pear(),<span style="font-family: Arial, Helvetica, sans-serif;">把Apple传个shouMe();</span>Fruit p=new Pear();shouMe(p);        //new 一个Banana(),<span style="font-family: Arial, Helvetica, sans-serif;">把Apple传个shouMe();</span>Fruit b=new Banana();shouMe(b);}}

 所谓多态,实际上就是一个对象的多种状态,在例子里

          Apple  可以看作Apple,也可以看作Fruit

          Pear   可以看作Pear ,也可以看作Fruit

          Banana  可以看作Banana,也可看作Fruit

Apple、Pear、Banana都是Fruit的几种状态,这就是Fruit多态。


0 0