zoukankan      html  css  js  c++  java
  • c# 反射基础

    代码
    using System;
    using System.Reflection;

    class Asminfo1
    {
    public static void Main(string[] args)
    {
    Console.WriteLine(
    "\nReflection.MemberInfo");

    //Get the Type and MemberInfo.
    //Insert the fully qualified class name inside the quotation marks in the following statement.
    // Type MyType = Type.GetType("System.IO.BinaryReader");

    Type MyType 
    = Type.GetType("test");

    // MemberInfo[] Mymemberinfoarray = MyType.GetMembers(BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Static | BindingFlags.Instance | BindingFlags.DeclaredOnly);
    MemberInfo[] Mymemberinfoarray = MyType.GetMembers();

    //Get and display the DeclaringType method.
    Console.Write("\nThere are {0} documentable members in ", Mymemberinfoarray.Length);
    Console.Write(
    "{0}.", MyType.FullName);

    foreach (MemberInfo Mymemberinfo in Mymemberinfoarray)
    {
    Console.Write(
    "\n" + Mymemberinfo.Name);
    }


    //******************************8

    System.Text.StringBuilder sb1 
    = new System.Text.StringBuilder();

    //Type t = typeof(System.Text.StringBuilder);
    Type t = sb1.GetType();
    object createObject = Activator.CreateInstance(t, "I am a instance of StringBuilder!");

    System.Text.StringBuilder sb 
    = (System.Text.StringBuilder)createObject;
    Console.Write(sb.ToString());

    string className = t.Name;

    //获取所有方法
    System.Reflection.MethodInfo[] methods = t.GetMethods();
    Console.Write(
    "\n"+ "method");
    foreach (System.Reflection.MethodInfo method in methods)
    {

    Console.Write(
    "\n" + method.Name + System.Environment.NewLine);
    }
    //获取所有成员
    // System.Reflection.MemberInfo[] members = t.GetMembers();

    //获取所有属性
    Console.Write("\n" + "property");
    System.Reflection.PropertyInfo[] properties 
    = t.GetProperties();
    foreach (System.Reflection.PropertyInfo property in properties)
    {
    Console.Write(
    "\n" + property.Name);
    }


    Console.ReadKey();

    }


    }
    public class test

    {
    private int _x;
    public int X
    {
    get { return _x; }
    set { _x = value; }
    }
    public bool isgood;

    int getX()
    {
    return _x;
    }
    }
  • 相关阅读:
    android 近百个源码项目【转】
    503 Service Temporarily Unavailable
    linux 复制文件夹内所有文件到另一个文件夹
    国甲魔方(1)
    大雁展翅,轮回,国甲,国丙,速龙,傲龙,御龙这些魔方有什么区别
    77教师一定要看的15部电影【附下载地址】
    教师一定要看的15部电影
    孩子
    为什么我的 app:actionViewClass="android.widget.SearchView"和app:showAsAction="ifRoom|collapseActionView"才有
    大数据征信 是伪命题?还是金融行业的救世主?
  • 原文地址:https://www.cnblogs.com/oneroom/p/1653540.html
Copyright © 2011-2022 走看看