• 继承和多态


    1.多态高级   

    1).多态

    里氏替换原则:

           子类除了可以具有父类私有的成员和方法外,还有可以拥有自己特有的成员变量和方法.

    2).is和as

         is做的是类型判定

         as做的是类型转换,()强转.本行code不会有错误,如果转换不了.返回null.

    3).父类的虚方法,而且定义不必强制重写.

    父类的抽象方法,子类必须强制重写.

    4).抽象方法实行多态

    父类得是抽象类,而且定义了抽象方法.

    子类必须重写抽象方法

    5).

    抽象类和抽象方法注意点:手写()
    1.抽象类使用Abstract关键字修饰。
    2.抽象方法只能位于抽象类中。
    3.抽象类不能实例化
    4.抽象方法不能有方法体,甚至连{}都没有
    5.抽象类不能是静态类或者密封类
    6.子类必须重写抽象类中的所有抽象方法,除非子类本身也是一个抽象类
    7.抽象类中可以有普通方法
    8.抽象类可以有构造函数
    9.重写所有抽象方法的快捷键是Ctrl+.
    10.抽象类中抽象方法就是用来约束子类方法形式(签名)的


    原理要解:抽象类其实是可以实例化的,但是他的实例化方式不是通过new方式来创建对象,
    而是通过父类的引用来指向子类的实例来间接地实现父类的实例化
    (因为子类要实例化前,一定会先实例化他的父类。这样创建了继承抽象类的子类的对象,
    也就把其父类(抽象类)给实例化了).

    结论:抽象类是可以实例化的,不能通过new实例化,可以通过子类构造自动调度父类构造实例化

  • 相关阅读:
    网络层-数据平面:路由器工作原理
    文件系统和目录:目录
    文件系统与目录:文件系统
    运输层-可靠数据传输原理:选择重传 Selective Repeat Protocol
    运输层-可靠数据传输原理:回退N步 Go-Back_N Protocol
    JAVA学习笔记之多态
    约瑟夫环的递归解法C
    题目:汉诺塔问题
    题目:在同一坐标中输出sinx和cosx两条曲线
    n!的溢出问题及处理
  • 原文地址:https://www.cnblogs.com/2652405350wch/p/6575164.html
Copyright © 2020-2023  润新知