C# —— 多态

发布时间:2024年01月10日

多态: 同一个行为具有多个不同的表现形式, 或形态的能力

多态的特点:

?属于同一个接口,使用不同的实例而去执行不同的操作

eg: 说话的方法speak() 但是不同的实例说的话不一样,例如中国人说汉语,日本人说日语
eg: USB接口,不同输入设备链接同一个接口的作用不一样
eg: ArrayList,Array List 都是继承于 ICollection 但是这个三个类都具有不同表现

静态多态性: 函数重载 运算符号重载

函数重载 相加的类

函数重载: 在同一个范围内对相同的函数名有多个定义
? ? ? ? ? ? 必须保证函数名一样 但是参数类型 或者参数个数 或者方法返回值不一样。

????????????特别注意 仅仅只注重方法的返回值不属于函数重载

符号重载

+(正)? -(负) !? ? ?`? ? ? ? ++? ? ? ? --? ? ?????一元运算符号 可以重载
+? ? ? ? -? ? ? ?*? ? ? ? /? ? ? ? %? ? ? ? ? ? ? ? ? ? 二元运算符 ? ?可以重载 a + b
==? ? ?!=? ? ? >? ? ? ?<? ? ? ?>=? ? ? <=? ? ? ? ?可以重载
&&? ? ?||? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ????????不能直接重载
+=? ? ?-=? ? ? *=? ? ?/=? ? ? ?%=? ? ? ? ? ? ?????不能重载
=? ? ? ? ?? ? ? ? :? ? ?new? ? ?is? ? ? ? ? ? ? ? ? ?不能重载

符号重载 其实也是通过函数改变符号的作用,方法定义通过关键字operator 加上符号 对对应的符号来进行修改功能

?operator + ()g

??????????????????????

在Main里面调用

例句结果如下:

文章来源:https://blog.csdn.net/lu2023_8_6/article/details/135394706
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。