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

    扩展方法是说,你原来的类,没有这么个方法,可是你想用这个方法,于是就出现扩展方法。

    比如string这个类他没有为字符串添加双引号的方法,这个时候就能自己写扩展方法让string具有这个方法

    var original = "ABCD";
    var quoted = original.Quote();
    Console.WriteLine(original);
    Console.WriteLine(quoted);
    
     
    
    public static class StringExtension
    {
    public static string Quote(this string str)
    {
    return $""{str}"";
    }
    } 

      有以下几点要注意的

    1.必须要在一个静态类里面声明一个静态方法

    2.静态方法的第一个参数必须是用this打头的,并且这个参数的类型是要依附的类的类型

    3.在使用这个方法的时候,不需要为第一个参数提供实参,因为实例本身就是这个实参

    再如下面这个栗子

    namespace Trimming {
    static class DoubleExtension {
    public static double Round(this double value, int digits) {
    return Math.Round(value, digits);
    }
    }
    
    class Program {
    static void Main(string[] args) {
    var d = 12.3456789;
    var r1 = d.Round(2);
    var r2 = d.Round(4);
    Console.WriteLine(d);
    Console.WriteLine(r1);
    Console.WriteLine(r2);
    }
    }
    }
    

      

  • 相关阅读:
    1. Java 基础概念
    IDEA 插件
    IDEA 初始化配置
    二叉查找树
    阿里云安装Redis教程与相关问题
    H2知识小结
    重装VisualSVN Server报错
    linux(centos6.10)下去掉mysql的强密码验证
    TP-LINK路由器端口映射全套教程(亲测有效)
    idea2018.3.6,离线使用maven的方法
  • 原文地址:https://www.cnblogs.com/1521681359qqcom/p/11397800.html
Copyright © 2011-2022 走看看