多态绑定机制

来源:互联网 发布:宏业清单计价软件 编辑:程序博客网 时间:2024/05/22 02:25

通过引用类型变量访问所引用的方法和属性的绑定机制

基类:

package six;public class Base {    String var = "BaseVar";    static String staticVar = "staticBaseVar";    public void method(){        System.out.println("BaseMethod");    }    static void staticMethod(){        System.out.println("staticMethod of Base");    }}

子类:

package six;public class Sub extends Base{    String var = "SubVar";    static String staticVar = "staticSubVar";    public void method(){        System.out.println("SubMethod");    }    static void staticMethod(){        System.out.println("staticMethod of Sub");    }    public static void main(String[] args) {        Base b = new Sub();//b被声明为base类型,引用Sub实例        b.method();//打印Sub实例的method()方法        b.staticMethod();//打印Base类的staticMethod()方法        System.out.println("var="+b.var+"***********"+"staticVar="+b.staticVar);//打印Base类的成员变量    }}

打印结果:

SubMethod
staticMethod of Base
var=BaseVar***********staticVar=staticBaseVar

由此可见

  1. 实例方法与引用变量所引用的对象的方法绑定;
  2. 静态方法与引用变量所声明的类型的方法绑定;
  3. 成员变量(实例变量、静态变量)与引用变量所声明的类型的成员变量绑定。
1 0