多态

怎么理解?


package com.duotai.test;


    class A {  
        public String show(D obj){  
               return ("A and D");  
        }   
        public String show(A obj){  
               return ("A and A");  
        }   
}   
class B extends A{  
        public String show(B obj){  
               return ("B and B");  
        }  
        public String show(A obj){  
               return ("B and A");  
        }   
}  
class C extends B{}   
class D extends B{}




package com.duotai.test;

public class TestA {

    public static void main(String[] args) {
        A a1 = new A();  
        A a2 = new B();  
        B b = new B();  
        C c = new C();   
        D d = new D();   
        System.out.println(a1.show(b));     
        System.out.println(a1.show(c));    
        System.out.println(a1.show(d)); 
        System.out.println("***************");
        System.out.println(a2.show(b));    
        System.out.println(a2.show(c));     
        System.out.println(a2.show(d)); 
        System.out.println("***************");
        System.out.println(b.show(b));     
        System.out.println(b.show(c));    
        System.out.println(b.show(d));    

    }

}



结果是:A and A
A and A
A and D
***************
B and A
B and A
A and D
***************
B and B
B and B
A and D

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 多态(1)静态多态与动态多态 什么是多态 从字面上理解就是多种形态的意思。而多态一词最初源自希腊语,其含义便是“多...
    kingZXY2009阅读 6,857评论 0 2
  • 写在前面 由于找工作的原因,最近几个月都没有更新博客了。。。这篇可能是今年最后一篇总结类的博文了,希望能够写的好点...
    niaoge2016阅读 13,048评论 1 52
  • 前些日子偶然看到一篇文章中提到“未来我们的社会会有更多的徐静蕾。。。”,评论中赫然有一句“算了吧,有更多的徐静蕾不...
    流苏月白阅读 3,122评论 0 0
  • 一、封装: 封装就是对类中的一些字段、方法进行保护,不被外界所访问到,有一种权限的控制功能,Java中有四种访问权...
    陪你看日出去阅读 9,229评论 1 9
  • 【原创诗歌】 快乐是一只狡猾斑斓的 小粉蝶 不经意就轻盈的从眼前飞过 伫落在远远的花枝 翩然绝色 真想化作一缕清风...
    淡淡青莲阅读 3,547评论 26 31