c#学习笔记 拓展方法

概念
为现有非静态 变量类型 添加新方法

作用

  1. 提升程序拓展性
  2. 不需要类中重新写方法
  3. 不需要继承来添加方法
  4. 为别人封装的类型写额外的方法

特点

  1. 一定是写在静态类中
  2. 一定是个静态函数
  3. 第一个参数为拓展目标
  4. 第一个参数用this修饰

基本语法:
在静态类中声明的静态方法
访问修饰符 static 返回值 函数名(this 拓展类名 参数名,参数类型 参数名,。。。)
{
//do something
}

namespace 拓展方法
{
    static class Tools
    {
        /// <summary>
        /// 为 int32 类 拓展一个成员方法
        /// </summary>
        /// <param name="value">使用这个方法的实例化对象(成员方法需要实例化对象来调用)</param>
        /// <param name="i">参数</param>
        /// <returns>返回调用对象加上参数 i 后的和</returns>
        public static int Add (this int value, int i)
        {
            return value + i;
        }
    }
    class Program
    {
        static void Main (string[] args)
        {

            Console.WriteLine (10. Add (5)); //15
        }
    }
}

补充:如果拓展函数名和拓展对象自己有的函数重名,则调用时会调用拓展对象自己的函数,而不是调用拓展的函数。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值