zoukankan      html  css  js  c++  java
  • 扩展方法与链式编程

    如:string s; s.ToUper().ToString();这个就是扩展方法的形式(可以一级一级的调)   那么,我们自己怎么来写扩展方法呢?

    (1)、在类的前面加上static关键字
    (2)、在方法的第一个参数前面加上this关键字(这样在使用这个方法的时候就不用在后面的括号中传参,而是用s.的方式来调用这个方法)
    (注意这个是.NET3.0的新特性,所以低版本的Vs没法实现)
    (3)、方法的第一个参数必须是你要扩展的那个类型,比如你要给int扩展一个方法,那么第一个参数就必须是int。

    如果想要在低版本的vs中也实现链式编程,看下面的一个例子

    using System;

    using System.Collections.Generic;

    using System.Text;

    namespace 链式编程

    {

        class Program

        {

            static void Main(string[] args)

            {

                Person p1 = new Person();

                p1.Name = "名人李四";

                p1.Run().Sing().Swim();

                Console.Read();

            }

        }

        class Person

        {

            private string name;

            public string Name

            {

                get { return name; }

                set { name = value; }

            }

            public Person Run()

            {

                Console.WriteLine("Run");

                return this;

            }

            public Person Swim()

            {

                Console.WriteLine("Swim");

                return this;

            }

            public Person Sing()

            {

                Console.WriteLine("Sing");

                return this;

            }

        }

    }

  • 相关阅读:
    memcache启动程序/etc/sysconfig/memcached
    shell中的点号
    mysql监控
    secureCRT 中文乱码
    memcache key
    杀死所以数据库进程
    导出表记录
    重建二叉树
    从尾到头打印链表
    二维数组中的查找
  • 原文地址:https://www.cnblogs.com/La5DotNet/p/2434424.html
Copyright © 2011-2022 走看看