zoukankan      html  css  js  c++  java
  • 扩展方法

    如果现有的一个类,想给它加上新的函数,原有的方式是从现有的一个类继承一个新的类,在新的类中加入需要的函数,现在提供了新的方式给现有的类添加函数而且不用继承,这就是扩展方法。现以扩展String类为例,给String类加一个判断是否为电子邮件格式的函数。

    首先新增一个类,如下

    /// <summary>
    /// 类和方法都必须是静态的,方法参数前有“this”,表示附加到实例上去
    /// </summary>
    public static class ScottGuExtensions
    {
        public static bool IsValidEmailAddress(this string s)
        {
            Regex regex = new Regex(@"^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$");
            return regex.IsMatch(s);
        }
    }

    你也可以为用此类的办法去判断DataSet是否为空,是否有表。

    public static class ScottGuExtensions
    {
        public static bool isDataSetValid(this DataSet  ds)
        {
            if (ds != null && ds.Tables.Count > 0)
            {
                return true;
            }
            return false;
        }
    }
    DataSet ds = GetDataSet();//获取DataSet的方法
    ds.IsDataSetValid(ds);
  • 相关阅读:
    Socket和ServerSocket学习笔记
    跨域资源共享的10种方式
    javascript执行环境(执行期上下文)详解
    js 自动插入分号
    原型对象prototype和原型属性[[Prototype]]
    构造自己的动画函数:animation,stop功能的实现
    sizzle源码分析 (4)sizzle 技术总结及值得我们学习的地方
    sizzle源码分析 (3)sizzle 不能快速匹配时 选择器流程
    sizzle源码分析 (2)ID 类 tag querySelectorAll 快速匹配
    sizzle源码分析 (1)sizzle架构
  • 原文地址:https://www.cnblogs.com/pnljs/p/2933725.html
Copyright © 2011-2022 走看看