zoukankan      html  css  js  c++  java
  • day14 多态与抽象

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

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

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

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

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

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

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

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

    用法:对象 instanceof 类名

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

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

    抽象(abstract):

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

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

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

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

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

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

    abstract与final修饰类的比较:

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

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

  • 相关阅读:
    人生的意义:
    instancetype和id的区别,objective-c
    iOS多线程系统整理 swift
    系统整理 精讲 swift 泛型
    swift学习笔记7
    swift学习笔记6
    swift学习笔记5
    [iOS开发日记]简易计算器
    [ocUI日记]UIImage和UIImageview
    [ocUI日记]UIwindow和UIview
  • 原文地址:https://www.cnblogs.com/fengshaolingyun/p/6142972.html
Copyright © 2011-2022 走看看