zoukankan      html  css  js  c++  java
  • C#3.0"扩展方法"简记

    C#3.0中增加了"扩展方法"这一代码扩展机制。对于已有类型,想对其进行扩展,但由于某种原因,不方便直接对源码进行修改,那么就可以通过扩展方法这一机制,将原类型的扩展方法写在其他类型中完成扩展,这样大大增强了C#语言的代码扩展方式,使用起来非常方便。

    要使用扩展方法这一机制,值得注意的地方有:扩展方法不能访问原类型的私有数据、扩展方法只能写成静态类的静态方法形式、扩展方法的允许有参数、扩展方法参数的第一个参数前需加"this"、扩展方法只能通过原类型对象来调用等。

    示例如下:

     public class EmployeeModel
        {
            
    private int _basePay = 950;

            
    public int Age
            {
                
    get
                {
                    
    return _basePay;
                }
            }
        }

        
    public static class SampleModelExtensions
        {
            
    public static int GetTotalPay(this EmployeeModel model, int normalPay)
            {
                
    return model.Age + normalPay;
            }
        }

    调用代码为:

    EmployeeModel model = new EmployeeModel();
    int TotalPay = model.GetTotalPay(350);
    this.Literal.Text = "TotalPay:" + TotalPay.ToString();

    最终结果:TotalPay:1300

    文章出处:www.cnblogs.com/jizhong

    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。否则保留追究法律责任的权利。

  • 相关阅读:
    OCP-1Z0-053-V12.02-622题
    OCP-1Z0-053-V12.02-501题
    Flex实现查询和重置
    闪回事务处理回退
    闪回数据归档测试
    闪回数据归档
    OCP-1Z0-053-V12.02-166题
    VC-摄像头控制SDK源码
    MFC 的 Picture Control 加载 BMP/PNG 图片的方法
    OCP-1Z0-051-V9.02-25题
  • 原文地址:https://www.cnblogs.com/jizhong/p/2087062.html
Copyright © 2011-2022 走看看