JAVA多态的课本理解

来源:互联网 发布:阿里云的钱怎么提现 编辑:程序博客网 时间:2024/06/05 08:21

   JAVA多态概述:

     在设计一个方法时,通常希望该方法具备一定的通用性。例如要实现一个动物叫的方法。由于每种动物的叫声是不同的,因此可以在方法中接收一个动物类型的参数,当传入猫类对象时就发出猫类的叫声,传入犬类对象时就会发出犬类的叫声。在同一个方法中,这种由于参数类型不同而导致执行效果各异的现象就是多态

   在JAVA中为了实现多态,允许使用一个父类类型的变量来引用一个子类类型的对象,根据被引用子类对象特征的不同,得到不同的运行结果。接下来通过一个案列来演示。如下:

//定义接口Animalinterface Animal{void shout();           //定义抽象shout()方法}//定义Cat类实现Animal的接口class Cat implements Animal{//实现shout()方法public void shout(){System.out.println("喵喵喵....");}}//定义Dog类实现Animal接口class Dog implements Animal{//实现shout()方法public void shout(){System.out.println("汪汪汪...");}}//定义测试类 Example_duotai public class Example_duotai {public static void main(String[] args) {Animal an1=new Cat();//创建Cat对象,使用Anima类型的变量an1引用Animal an2=new Dog();//创建Dog对象,使用Anima类型的变量an2引用animalShout(an1);//调用animalShout()方法,将an1作为参数传入animalShout(an2);//调用animalShout()方法,将an2作为参数传入}//定义静态的animalShout()方法,接收一个Aniaml类型的参数       public static void animalShout(Animal an){an.shout();}}

运行结果:

                   喵喵喵...

                   汪汪汪...




0 0