zoukankan      html  css  js  c++  java
  • C#中this的 四种 用法

    C#中的this用法,相信大家应该有用过,但你用过几种?以下是个人总结的this几种用法,欢迎大家拍砖,废话少说,直接列出用法及相关代码。

    this用法1:限定被相似的名称隐藏的成员

    /// <summary> 
    
        /// /******************************************/ 
    
        /// /*  this用法1:限定被相似的名称隐藏的成员 */ 
    
        /// /******************************************/ 
    
        /// </summary> 
    
        /// <param name="Name"></param> 
    
        public Person(string Name, string Sex) 
    
      { 
    
            this.Name = Name; 
    
            this.Sex = Sex; 
    
      }

    this用法2:将对象作为参数传递到其他方法

    /// <summary> 
    
    ///Person 的摘要说明 
    
    /// </summary> 
    
    public class Person 
    
    { 
    
        /// <summary> 
    
        /// 姓名 
    
        /// </summary> 
    
        public string Name { set; get; } 
    
      
    
        /// <summary> 
    
        /// /*******************************************/ 
    
        /// /* this用法2:将对象作为参数传递到其他方法 */ 
    
        /// /*******************************************/ 
    
        /// </summary> 
    
        public void ShowName() 
    
        { 
    
            Helper.PrintName(this); 
    
        } 
    
      
    
          
    
      
    
    } 
    
      
    
    /// <summary> 
    
    /// 辅助类 
    
    /// </summary> 
    
    public static class Helper 
    
    { 
    
      
    
        /// <summary> 
    
        /// 打印人名 
    
        /// </summary> 
    
        /// <param name="person"></param> 
    
        public static void PrintName(Person person) 
    
        { 
    
            HttpContext.Current.Response.Write("姓名:" + person.Name + "<br />"); 
    
        } 
    
      
    
    }

    this用法3:声明索引器

    /// <summary> 
    
     /// 其它属性 
    
     /// </summary> 
    
     public NameValueCollection Attr = new NameValueCollection(); 
    
     
    
    /// <summary> 
    
     /// /*************************/ 
    
     /// /* this用法3:声明索引器 */ 
    
     /// /*************************/ 
    
     /// </summary> 
    
     /// <param name="key"></param> 
    
     /// <returns></returns> 
    
     public string this[string key] 
    
     { 
    
         set
    
         { 
    
             Attr[key] = value; 
    
         } 
    
     
    
         get
    
         { 
    
             return Attr[key]; 
    
         } 
    
     }
    
     
    
    
     

    this用法4:扩展对象的方法

    /// <summary> 
    
    ///Person 的摘要说明 
    
    /// </summary> 
    
    public class Person 
    
    {   /// <summary>     
    
        /// 性别     
    
        /// </summary>     
    
        public string Sex { set; get; } 
    
    } 
    
      
    
      
    
    /// <summary> 
    
    /// 辅助类 
    
    /// </summary> 
    
    public static class Helper 
    
    { 
    
      
    
        /// <summary> 
    
        /// /*****************************/ 
    
        /// /* this用法4:扩展对象的方法 */ 
    
        /// /*****************************/ 
    
        /// </summary> 
    
        /// <param name="item"></param> 
    
        /// <returns></returns> 
    
        public static string GetSex(this Person item) 
    
        { 
    
            return item.Sex; 
    
        } 
    
    }
    
    
    调用:
    
    Person person = new Person(); 
    
    person.GetSex();
    
     
  • 相关阅读:
    块级元素与行级元素(内联元素)
    css中属性值继承小解
    form表单
    html,xhtml和xml
    html中的标签分类
    如何把HTML标记分类
    实现对HashMap的value排序
    装饰者模式
    实现一个简单的二叉树容器,并且实现中序、先序、后续遍历
    Java中java.util.concurrent包下的4中线程池代码示例
  • 原文地址:https://www.cnblogs.com/x-poior/p/5665039.html
Copyright © 2011-2022 走看看