<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12
      代碼改變世界

      Attribute基礎,園友不用看,浪費您時間

      2012-02-01 19:09  海不是藍  閱讀(388)  評論(0)    收藏  舉報

      Attribute基礎

      Attribute作用就是為程序添加說明信息,特性都是繼承System.Attribute。所有特性都必須是System.Attribute的派生類(別想逆天!)。

       

      特性是個類,這個類很簡單,簡單到只有基本的字段或屬性,別想在特性里面添加方法,這個也是逆天的。

       

      創建個簡單的特性

      [AttributeUsage(AttributeTargets.All)]

      public class TestAttribute : Attribute

      {

          private string str;

          public string Str

          {

              get { return str; }

              set { str = value; }

          }

          public TestAttribute(string str)

          { this.str = str; }

      }

      特性前有個AttributeUsage特性,它指明TextAttribute能夠應用的范圍,這里是所有類型的項。

       

      使用這個特性

      [TestAttribute("blah blah blah......")]

      public class Test { }

       

      獲取Test類上的特性

      通常用下面2個方法獲取

      1.Attribute.GetCustomAttribute

      public static Attribute GetCustomAttribute(MemberInfo element, Type attributeType);

       

      2.MemberInfo類中的GetCustomAttributes方法

      public abstract object[] GetCustomAttributes(bool inherit);

      參數如果為true,那么所有基類的特性都會被包含進來,否則獲取指定類型本身定義的特性。

      class Program

      {

          static void Main()

          {

              Type t = typeof(Test);

              Type t1 = typeof(TestAttribute);

              TestAttribute ta = (TestAttribute)Attribute.GetCustomAttribute(t, t1);

              Console.WriteLine(ta.Str);

              Console.WriteLine("---------------------------------------");

              object[] obj = t.GetCustomAttributes(false);

              foreach (object o in obj)

              {

                  TestAttribute ta1 = (TestAttribute)o;

                  Console.WriteLine("{0}---{1}", o, ta1.Str);

              }

              Console.Read();

          }

      }

       

      特性屬性的其它賦值方法

      private string str1;

      public string Str1

      {

          get { return str1; }

          set { str1 = value; }

      }

      public TestAttribute(string str)

      {

          this.str = str;

          this.str1 = "null";

      }

      這個時候多了個str1字段,但是構造函數沒有提供外面對他賦值的就會。

      這個是的賦值方式就是下面的樣子

      [TestAttribute("blah blah blah......", Str1 = "123")]

      public class Test { }

       

      《clr via c#》的Attribute那一章今天沒心情看了,有空看看

      主站蜘蛛池模板: 粗了大了 整进去好爽视频| 亚洲热视频这里只有精品| 日本边添边摸边做边爱喷水| 精品无码老熟妇magnet| 国产成人精品永久免费视频| 蜜臀91精品国产高清在线| 中文字幕人妻中文AV不卡专区| 亚洲第一区二区快射影院| 日本韩无专砖码高清观看| 国产人妻精品午夜福利免费| 色综合AV综合无码综合网站| 久久亚洲av综合悠悠色| 亚洲国产成人AⅤ片在线观看| 免费看欧美全黄成人片| 色综合久久中文字幕综合网| 成年午夜免费韩国做受视频| 国产福利视频区一区二区| 深夜av在线免费观看| 精品无码av无码专区| 国内自拍av在线免费| 日韩精品亚洲专在线电影| 于田县| 亚洲国产精品成人综合色在| 亚洲www永久成人网站| 盐亭县| 无码人妻斩一区二区三区 | 精品国产一区二区三区2021| 日韩一区在线中文字幕| 成人3d动漫一区二区三区| 老熟妇乱子交视频一区| 日韩中文字幕有码av| 国产精品线在线精品| 亚洲欧洲日产国码高潮αv| 国产日产亚洲系列av| 开心激情站一区二区三区| 噜妇插内射精品| 国产亚洲av日韩精品熟女| 久久精品国产www456c0m| 亚洲色精品vr一区区三区| 国产麻豆成人传媒免费观看| 人妻中文字幕精品一页|