当前位置:首页 > Windows程序 > 正文

C# Attribute(中)

2021-03-22 Windows程序

        

         上篇里,我们把Attribute“粘”在类的成员方法上show了一把,让Attribute跟大家混了个脸儿熟。中篇里,我们将探讨“究竟什么是Attribute”和“如何创建及使用Attribute”这两个问题。

         准备好了吗?Let’s go!

        

正文:

          

         从上篇里我们可以看到,Attribute似乎总跟publicstatic这些关键字(Keyword)出现在一起。莫非使用了Attribute就相当于定义了新的修饰符(Modifier)吗?让我们来一窥究竟!

         先把下面这个例子编译出来:

                              

#define OK

using System;
using System.Diagnostics;

namespace Sample
{
         class 
Program
         {
                   [Conditional("OK")]
                   public static void TargetMethod()
                   {
                            Console.ForegroundColor = ConsoleColor.Green;
                            Console.WriteLine("\t=<
水之真谛>=\n\n\n");
                   }
                   static void Main(string[] args)
                   {
                            TargetMethod();
                   }
         }
}

                     

         毋庸置疑,它的运行结果会是这样:

            

 

 

 

 

 

              

 

 

         接下来,让我们把编译出的结果(.EXE文件)用“微软中间语言反编译器”打开,查看存储在程序集(Assembly,这在个例子中就是这个.EXE文件)中的中间语言代码(中间语言也就是我们常说的通用语言)。

            

 

 

 

 

 

 

 

                  

         如果你认为反汇编是件很神秘的事情,那你可就错了!比起x86汇编语言来,对.NET程序集的反汇编要简单得多——甚至可以说是与C#语言一一对应:

          

 

 

 

 

 

 

 

                   

温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/65433.html