浪漫骑士必胜

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
  145 随笔 :: 2 文章 :: 574 评论 :: 33万 阅读

 

多态

如果子类和父类的方法名重名了,会报绿线,如何把绿线干掉?

第一种方法,我们可以在子类的方法的访问修饰符后面加new 绿线没了,可以解决

 

图一、加new

加new是把父类当中的方法隐藏

第二种方法,我们可以在父类的方法上加一个virtual 然后 子类在继承父类的时候,可以用override来重写父类的方法;

 

图二、方法的重写

 虚方法重写

  1. 方法不能用static修饰
  2. 方法重写与基类的签名必须一致
  3. Virtual不能与private一起使用

 

抽象类和抽象方法:

 

如果类中有一个方法加上了abstract ,那么这个方法叫抽象方法,而且,抽象方法没有方法体;同时那么这个方法所在的这个类也必须要用abstract来修饰,那么这个类就变成了抽象类;

 

抽象类 不能被实例化;

如果一个类继承了抽象类,那么,这个类中的方法,必须要重写父类的抽象方法;

 

 

图三、抽象类和抽象方法

 

 Override与重载(overload)的区别

重载是方法的名称相同。参数或参数类型不同,进行多次重载以适应不同的需要。重载(overload)是面向过程的概念。

 

Override是进行基类中函数的重写。Override是面向对象的概念。

重写和重载不一样 要区分开

 

 

图四、虚方法抽象方法比较

 

 

图五、接口的简单介绍

  这段知识本文介绍的较为基础,那么我们在后面将有更加细致的文章,为追求更高层次的朋友服务。大家也可以把自己学习这段知识的心得体会放在文章的帖子中。也希望我们相互提高。

作者近期文章列表:

posted on   小事好  阅读(996)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· SQL Server 2025 AI相关能力初探
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
点击右上角即可分享
微信分享提示