C#多态

静态多态

  • 函数重载
    对相同函数名的函数有多个定义,需要参数列表中的参数类型或者个数不同
void print(int i)
    {
       Console.WriteLine("Printing int: {0}", i );
    }

    void print(double f)
    {
       Console.WriteLine("Printing float: {0}" , f);
    }
  • 运算符重载
    重载运算符是特殊名称的函数,通过关键字 operator 后跟运算符的符号来定义。与其他函数一样,重载运算符有返回类型和参数列表。
    下面的函数为用户自定义的类 Box 实现了加法运算符(+)。它把两个 Box 对象的属性相加,并返回相加后的 Box 对象。
public static Box operator+ (Box b, Box c)
    {
       Box box = new Box();
       box.length = b.length + c.length;
       box.breadth = b.breadth + c.breadth;
       box.height = b.height + c.height;
       return box;
    }

动态多态

  • 抽象类
    1. 您不能创建一个抽象类的实例。
    2. 您不能在一个抽象类外部声明一个抽象方法。
  • 虚方法
    当有一个定义在类中的函数需要在继承类中实现时,可以使用虚方法。虚方法是使用关键字 virtual 声明的。虚方法可以在不同的继承类中有不同的实现。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值