计算机二级辅导:Java运行时多态性的实现

2014-11-23 19:43:57 · 作者: · 浏览: 22

  运行时多态性是面向对象程序设计代码重用的一个最强大机制,动态性的概念也可以被说成“一个接口,多个方法”。Java实现运行时多态性的基础是动态方法调度,它是一种在运行时而不是在编译期调用重载方法的机制,下面就继承和接口实现两方面谈谈java运行时多态性的实现。


  一、通过继承中超类对象引用变量引用子类对象来实现


  举例说明:


  //定义超类superA


  class superA


  {


  int i = 100;


  void fun()


  {


  System.out.println(“This is superA”);


  }


  }


  //定义superA的子类subB


  class subB extends superA


  {


  int m = 1;


  void fun()


  {


  System.out.println(“This is subB”);


  }


  }


  //定义superA的子类subC


  class subC extends superA


  {


  int n = 1;


  void fun()


  {


  System.out.println(“This is subC”);


  }


  }


  class Test


  {


  public static void main(String[] args)


  {


  superA a;


  subB b = new subB();


  subC c = new subC();


  a=b;


  a.fun();   (1)


  a=c;


  a.fun();   (2)


  }


  }