Java 中的运行时多态性

javajava programming java 8

方法重写是运行时多态性的一个例子。在方法重写中,子类会重写与其超类中签名相同的方法。在编译时,将对引用类型进行检查。但是,在运行时,JVM 会确定对象类型并运行属于该特定对象的方法。

示例

请参阅下面的示例以了解概念 −

class Animal {
   public void move() {
      System.out.println("Animals can move");
   }
}
class Dog extends Animal {
   public void move() {
      System.out.println("狗可以走路和跑步");
   }
}
public class TestDog {
   public static void main(String args[]) {
      Animal a = new Animal(); // Animal 引用和对象
      Animal b = new Dog(); // Animal 引用但 Dog 对象
      a.move(); // 运行 Animal 类中的方法
      b.move(); // 运行 Dog 类中的方法
   }
}

输出

这将产生以下结果 −

Animals can move
Dogs can walk and run

相关文章