美文网首页
java se 多态1.0 变量、方法的访问

java se 多态1.0 变量、方法的访问

作者: 起名字真难难难 | 来源:发表于2020-02-11 11:51 被阅读0次

    extends、implement是多态的前提

    多态

    父类引用指向子类

    父类名称 对象名=new 子类名称();
    

    接口引用指向实现类

    接口名称 对象名=new 实现类名称();
    

    右边new谁调用谁

    多态中成员变量的访问特点

    1、直接通过对象名进行访问,等号左边是谁,优先调用谁,没有向上找

    public class Fu {
        int num=20;
    }
    
    public class Zi extends Fu{
        int num=10;
    }
    
    public class Demo01Multi {
        public static void main(String[] args) {
            Fu mul=new Zi();
            System.out.println(mul.num);//访问变量看左边,调用父类
            }
    }
    
    结果

    2、间接通过成员方法
    (1)若没重写,方法属于谁优先用谁,没有向上找
    (2)如果子类重写了,优先用子类(因为子类更具体)

    成员方法的访问规则

    成员方法:编译看左边,运行看右边
    方法new谁运行谁,没有向上找
    成员变量:编译看左边,运行也看左边
    多态的好处:无论右边new时换哪个子类对象,左边都不变

    相关文章

      网友评论

          本文标题:java se 多态1.0 变量、方法的访问

          本文链接:https://www.haomeiwen.com/subject/wiotfhtx.html