首頁  >  文章  >  後端開發  >  asp.net反射簡單應用實例

asp.net反射簡單應用實例

高洛峰
高洛峰原創
2017-02-20 17:08:561275瀏覽

本文實例講述了asp.net反射簡單應用。分享給大家供大家參考,具體如下:

反射提供了封裝組件、模組和類型的物件(Type 類型)。可以使用反射動態建立類型的實例,將類型綁定到現有對象,或從現有對象取得類型並呼叫其方法或存取其欄位和屬性。如果程式碼中使用了屬性,可以利用反射來存取它們。 ----這是反射最簡單的理解。以下就是一個最簡單的實例來講述反射技術的應用!

一. 聲明接口,接口中包含一個虛擬方法。如下

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication1
{
  public interface IReflect
  {
    void Run(string name);
  }
}

二. 實作接口,實作接口中的方法。如下

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication1
{
  public class Reflect:IReflect
  {
    public void Run(string name)
    {
      Console.WriteLine(name+"开始跑了!");
    }
  }
}

三. 透過反射技術來建立類型的實例,並呼叫實例的方法。如下

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Reflection;
namespace ConsoleApplication1
{
  class Program
  {
    static void Main(string[] args)
    {
      IReflect rec = (IReflect)Assembly.Load("ConsoleApplication1").CreateInstance("ConsoleApplication1.Reflect");
      rec.Run("aaa");
      Console.ReadLine();
    }
  }
}

這樣一個簡單的實例就完成了,顯示的結果就是「aaa開始跑了」。反射的命名控件是System.Reflection,在使用時候一定要引用該命名控件,該命名控件長用的物件就是Assembly,該物件包含許多靜態方法。其中Load就是很典型的。 CreateInstance是用來建立某個物件的實例。

更多asp.net反射簡單應用實例相關文章請關注PHP中文網!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn