• day14 多态与抽象


    多态:相同的行为,不同的实现。

    多态分为:静态多态和动态多态。

    静态多态:在编译期即确定方法的实现和效果。——使用重载实现

    动态多态:运行后才能确定方法的实现和执行效果。——使用动态绑定和重写实现

    动态绑定技术:引用数据类型转换、instanceof关键字

    引用数据类型转换:向上转型:父类的引用指向子类的对象。

                             向下转型:运行起来后,确实是本类引用指向本类对象或者指向子类对象,才能成功。

    instanceof关键字:用于判断运行时对象的真正类型,判断对象是否是某个类的实例。返回true/false。

    用法:对象 instanceof 类名

    多态的应用:多态参数:就是方法的形参是一个引用的时候,该引用兼容的任何对象都可以传递给该方法。

                    多态集合:就是存放不同数据类型的集合。例如: Object[]

    抽象(abstract):

    当abstract修饰方法的时候,该方法为抽象方法,表示类有这个方法,该方法的实现由子类完成。

    当abstract修饰类的时候,该类为抽象类,抽象类不能产生对象。

    注意:1、有抽象方法的类一定是抽象类

            2、抽象类不一定有抽象方法(语法允许)

            3、抽象类除了用abstract修饰外,其它跟普通类一样,属性,构造(给子类用),已实现的方法等等。

            4、子类在继承抽象类的时候,必须重写父类全部抽象方法,否则这个类也是抽象类。

    abstract与final修饰类的比较:

    abstract设计父类,不能产生对象,能继承。

    final设计最终类,不能被继承,能产生对象。

  • 相关阅读:
    最快效率求出乱序数组中第k小的数
    调整数组顺序使奇数位于偶数前面
    分治算法的完美使用----归并排序
    快速排序分区以及优化方法
    分治法以及快速排序
    高效求a的n次幂的算法
    最长连续递增子序列(部分有序)
    在有空字符串的有序字符串数组中查找
    旋转数组的最小数字(改造二分法)
    递归----小白上楼梯
  • 原文地址:https://www.cnblogs.com/fengshaolingyun/p/6142972.html
Copyright © 2020-2023  润新知