函数的覆盖(OVERRIDE)和多态

来源:互联网 发布:mac如何安装f6驱动 编辑:程序博客网 时间:2024/05/21 19:22

 函数的覆盖:当类A继承类B,并且类A中有一个方法和类B中的一样时,就形成

了函数的覆盖,函数的覆盖是用于子类和父类之间。函数的覆盖是多态的基础

,当这个被重载的方法被调用时,调用哪一个取决于对象是类A还是类B。

 

例子:

public class Test {
 public static void main(String[] args) {
  Quick q = new Quick();
  Human h = new Human();
  Plant p = new Plant();
  t(q);
  t(h);
  t(p);  
 } 
 public static void t(Quick q) {
  q.print();
 }
}

class Quick {
 public void print() {
  System.out.println("Quick");
 }
}

class Human extends Quick {
 public void print() {
  System.out.println("Human");
 }
}