深入理解多态

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了深入理解多态相关的知识,希望对你有一定的参考价值。

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.索引器的本质是属性,属性的本质是方法.
  事件的底层代码是通过委托实现的.

以上是关于深入理解多态的主要内容,如果未能解决你的问题,请参考以下文章

多态的深入理解

多态的深入理解

多态的深入理解

多态的深入理解

深入理解多态

深入理解多态