面向对象的设计三大特征:二 多态
2018-06-23 13:21:34来源:未知 阅读 ()
多态的两个明显的特点:
1. 从父类继承而来的子类可以转换成其父类。
2. 父类中的virtual方法,每个子类都可以override各自的方法;当用父类来引用这些子类,同样的操作而可以表现出不同的操作结果,就是多态。
子类继承基类的所有方法,字段,属性,事件。子类可以选择:
1. Override 基类中的virtual成员
a. 只有方法、属性、事件和索引器(Indexers)可以是virtual,字段(Fields)不可以为virtual。
b. 继承类只能override基类的virtual或abstract成员。
2. 继承基类的virtual成员,不去override
3. 用new去重写基类中非virtual的成员
密封(Sealed Override)
基类含有virtual成员,它的继承类(各个级别)都可以override。如果希望停止覆写需要用sealed override。之后的类只能用new去重新定义方法。
D classD = new D();
classD.DoWork(); //调用方法D
A classA = new A();
classA = (A)classD; //方法也具有继承性,调用方法C
B和C都可以override A中的方法, 但是C用了Sealed, D就不能再override Dowork()方法了,只能用New; 当用父类去引用子类时(A指向D),我们发现override方法沿用继承的特性,由上至下直到找到方法C,并调用之。
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- 了解php工作原理以及常用功能 2019-09-30
- 商品SKU系统,你如何设计? 2019-09-17
- php并发加锁问题分析与设计,可深入学习 2019-08-29
- 架构设计:标准Web系统的架构分层 2019-08-29
- 性能优化:Mysql分表与分库使用场景以及设计方式 2019-08-27
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash