黑马程序员技术交流社区

标题: 当实现多个接口时的多态 [打印本页]

作者: 小忧伤    时间: 2016-5-26 22:48
标题: 当实现多个接口时的多态
当实现多个接口时的多态:

          interface IA{
                  public void fun1();
          }
          interface IB{
                  public void fun2();
          }
   abstract class AbsC{
          public abstract void fun3();
  }
        class Sub extends AbsC implements IA,IB{
                public void fun1(){
                  }
                  public void fun2(){
                  }
                  public void fun3(){
                  }
          }
          main(){
                  //使用接口多态
                  IA a = new Sub();
                  a.fun1();//只能访问fun1()方法
                  a.fun2();//编译错误。在IA中没有fun2()方法
                  //向下转型
                  Sub sub = (Sub)a;
                sub.fun1();//OK的
                sub.fun2();//OK的

                  IB b = new Sub();
                  b.fun1();//编译错误。在IB中没有fun1()方法
                  b.fun2();//OK的

                  //抽象类多态
                  AbsC c = new Sub();
                  c.fun3();//只能访问fun3();
          }







欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2