继承中的多态性

利用多态,使用的对象调用方法的几点总结:

  • 调用自身方法
  • 调用父类方法
  • 调用覆盖方法
public class Var {

    public Var() {
        super();
    }
    public void var_print0(){
        System.out.println("父类方法0");
    }
    public void var_print1(){
        System.out.println("父类方法1");
    }

}
public class Var_child extends Var{
    public void child_print(){

        System.out.println("子类方法!");
    }
    public void var_print1(){
        System.out.println("覆盖方法1");
    }
    public static void main(String[] args) {
        Var v=new Var_child();
        v.child_print();
    }
}

以上程序无法通过编译,eclipse直接报错!
说明:父类变量指向子类对象,导致变量无法调用子类独有的公共方法;

public static void main(String[] args) {
        Var v=new Var_child();
        v.var_print0();
    }

输出结果: 父类方法0

说明:变量可以调用父类的公共方法;

public static void main(String[] args) {
        Var v=new Var_child();
        v.var_print1();

    }

输出结果: 覆盖方法1

说明:如果父类和子类同时有一种方法,子类重写了这个方法,那么变量会调用子类的方法。

未完待续

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值