C#进阶5_多态
来源:互联网 发布:不干胶排版软件 编辑:程序博客网 时间:2024/06/06 02:14
1、多态:让一个对象能够表现出多种的状态(类型)。
2实现多态的手段
步骤:1)、将父类的方法标记为虚方法,使用关键字virtual,这个函数可以被子类重新写一遍。
2)、抽象类:当父类中的方法不知道如何去实现的时候,可以考虑将父类写成抽象类,
将方法写成抽象方法
3、抽象类
1)、抽象成员必须标记为abstract,并且不能有任何实现
2)、抽象成员必须在抽象类中。
3)、抽象类不能被实例化。
4)、子类继承抽象类后,必须把父类中的所有抽象成员都重写。(如果子类也是一个抽象类,则可以不重写)。
5)、抽象成员的访问修饰符不能是private
6)、在抽象类中可以包含实例成员,并且抽象类的实例成员可以不被子类实现。
7)、抽象类是有构造函数的。虽然不能被实例化。
8)、如果父类的抽象方法中有参数,那么,继承这个抽象父类的子类在重写父类的方法的时候必须传入对应的参数,如果抽象父类的抽象方法中有返回值,那么子类在重写这个抽象方法的时候,也必须要传入返回值。
9)、如果父类中的方法有默认的实现,并且父类需要被实例化,这时可以考虑将父类定义成一个普通类,用虚方法来实现多态。如果父类方法没有默认实现,父类也不需要被实例化,则可以将该类定义为抽象类。
阅读全文
0 0
- C#进阶5_多态
- C#进阶3_集合
- C#进阶1_面向对象、类
- C#进阶2_字符串、继承
- C#进阶4_文件夹类、文件类
- Python进阶笔记(5)_ 继承
- c# 进阶
- c#进阶
- 进阶_回调Callback_150504
- 单链表_进阶版
- 筛法_算法进阶
- C#进阶6_部分类、密封类、多态的手段、ToString用法
- SUNWEN教程之----C#进阶5
- python进阶三_函数
- shiro(四)_进阶
- 进阶_线程(Handler)_150504
- 进阶_线程(HandlerThread)_150504
- 进阶_线程(AsyncTask)_150504
- 数据库访问工具 DBUtl
- java 使用TreeSet将字符串中的数值进行排序
- React.js 中的组件通信问题
- spring定时器注解的用法详解
- 支付宝支付
- C#进阶5_多态
- 利用spring boot 写一个稳定的爬虫
- spring容器ApplicationContext
- Linux系统Vim命令抛出异常 Em25:ATTENTION 解决方案
- HTML5数据存储---使用clear()方法清除localStorage保存对象的全部数据
- 提高MySQL性能的7个技巧
- RelFinder 放在 tomcat 下访问另一台服务器中的数据库时的跨域问题
- 如何通俗易懂地理解皮尔逊相关系数?
- gRPC