zoukankan      html  css  js  c++  java
  • 深入理解多态

    1.实现多态的三种方式
       1.1 虚方法
       1.2 抽象类
       1.3 接口
    2.里氏替换
       2.1 里氏替换的概念:在一个软件系统中,如果子类替换父类出现的位置,而对整个软件系统功能没有影响。
    3.抽象类和抽象方法
       虚方法可以选择性的被子类重写,抽象方法强制子类必须重写
       3.1 一个类中abstract修饰,就是抽象类
       3.2 抽象类不能实例化(换个说法就是 不能new)
       3.3 抽象方法不能有方法体,甚至连{}都不能有
       3.4 抽象方法只能存在于抽象类中
       3.5 抽象方法存在的目的:就是为了约束子类中方法存在的形式(参数列表和返回值类型)
       3.6 抽象类不能是静态类(static)或者密封类(sealed)
       3.7 抽象类中的所有抽象方法都必须被子类重写,除非子类本身也是一个抽象类
       3.8 一键重写所有抽象方法的快捷键:Shift+Alt+F10  或者 Ctrl+.(无输入法的情况下)
    4.通过接口实现多态
       4.1 接口是一种规范
       4.2 接口也是一种数据类型,数组 类 接口 泛型,string都是引用类型
       4.3 C#中接口里面不能有变量
    5.接口是比抽象类抽象程度更高的一个封装体
    6.抽象类可以有构造,也可以有普通方法
    7.父类: 基类/父类/超类
      子类: 派生类
    8.索引器的本质是属性,属性的本质是方法.
      事件的底层代码是通过委托实现的.

  • 相关阅读:
    axios+post获取并下载后台返回的二进制流
    vue+ckEditor5
    金额大写转换(改进版)
    vue+axios请求头封装
    移动端h5+vue失焦搜索,ios和android兼容问题
    vue滚动+滑动删除标记(移动端)仿qq/微信
    重置 centos 7 密码
    发现好玩的——github + git 有意思的用法
    github 中使用 issues
    java代理模式与装饰模式
  • 原文地址:https://www.cnblogs.com/GIRLANDBOYS/p/7133795.html
Copyright © 2011-2022 走看看