Heim  >  Artikel  >  Backend-Entwicklung  >  Fassen Sie praktische Anwendungen der Reflexionstechnologie zusammen.

Fassen Sie praktische Anwendungen der Reflexionstechnologie zusammen.

零下一度
零下一度Original
2017-06-23 15:00:351448Durchsuche

Die Verwendung von Reflexion wurde bereits zusammengefasst. In diesem Artikel wird ein vollständiges Projekt zusammengefasst, um die praktische Anwendung von Reflexion zusammenzufassen.

Projektstruktur

Wie unten gezeigt:

Definieren Sie die Plug-in-Schnittstelle

Im Projekt ConsoleApplication6 sind zwei Schnittstellen definiert. Run steht für Fahren und Trun für Lenkung

Plug-in-Programmimplementierung
 1 namespace ConsoleApplication6.IService 2 { 3     /// <summary> 4     /// 创建一个车的接口 5     /// </summary> 6     public interface ICarService 7     { 8         /// <summary> 9         /// 行驶10         /// </summary>11         void Run();12 13         /// <summary>14         /// 转向15         /// </summary>16         /// <param name="direction"></param>17         void Turn(Direction direction);18 19     }20 21     public enum Direction22     {23         East,24         Weast,25         South,26         North27     }28 }
Hier sind zwei neue Projekte zur Implementierung von Plug-ins, nämlich ConsoleApplication6.Service.BMW und ConsoleApplication6.Service.BenZ. Der Code lautet wie folgt:

Führen Sie das Programm aus
 1 namespace ConsoleApplication6.Service.BMW 2 { 3     public class BMWCarService: ICarService 4     { 5         /// <summary> 6         /// 行驶 7         /// </summary> 8         public void Run() 9         {10             Console.WriteLine("BMW Car Run!");11         }12 13         /// <summary>14         /// 转向15         /// </summary>16         /// <param name="direction"></param>17         public void Turn(Direction direction)18         {19             Console.WriteLine(string.Format("BMW Car turn:{0}", direction.ToString()));20         }21     }22 }
Als nächstes können wir Reflection verwenden, um das Plug-in-Programm auszuführen, wie im gezeigt Folgender Code:
 1 namespace ConsoleApplication6.Service.BenZ 2 { 3     public class BenZCarService: ICarService 4     { 5         /// <summary> 6         /// 行驶 7         /// </summary> 8         public void Run() 9         {10             Console.WriteLine("BenZ Car Run!");11         }12 13         /// <summary>14         /// 转向15         /// </summary>16         /// <param name="direction"></param>17         public void Turn(Direction direction)18         {19             Console.WriteLine(string.Format("BenZ Car turn:{0}", direction.ToString()));20         }21     }22 }

Auf diese Weise wird gleichzeitig ein einfaches Plug-In-Programm fertiggestellt, wenn wir ein ähnliches Plug-In entwickeln Rahmen wird die Reflexionstechnologie umfassend eingesetzt.

Das obige ist der detaillierte Inhalt vonFassen Sie praktische Anwendungen der Reflexionstechnologie zusammen.. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:statische KlasseNächster Artikel:statische Klasse