java 多态

多态的前提条件:

1,存在继承关系:

    两个名词存在是的关系,便可以产生继承关系
    eg:学生是人  人是学生的子类
    父类只有一个,子类可以有多个。父类与子类是一对多的关系
    任意一个类默认继承object。
    子类可以继承父类公有的属性和方法(构造除外)
    单继承,子类可对父类中的方法进行重载
    创建子类对象之前一定会先创建父类对象
    this指当前对象,super只是指代父类的一个关键字,并不是一个对象。
        注意继承加载顺序:先静态后非静态,先块后构造,先父后子

2,子类重写父类中的方法

     重写:存在继承关系,方法一致(内容不同),子类访问修饰符不低于父类修饰符。

修饰符:    无修饰符只能被本包内(只能同一级目录)的类访问
    protected:
        只能被本包与子类访问
    public 全公开,全访问
    private本类访问
    public > protected > 缺省 > private
    
    final  修饰引用变量的时候,表示变量的地址不能修改,也就是说无法二次new
    final 修饰的变量全都在堆中
    final 修饰的方法是无法被重写的
    finla 修饰的类是无法被继承的

3,使用父类引用,子类对象

    父类  a = new 子类
            其中a决定了可以访问的资源,子类对象决定了执行资源

eg:

java 多态

 

java 多态

 

java 多态

java 多态