如何在反射中调用类的静态方法实例化类,类的代码如下
public Class1
{
  public static Class1 myclass=null;
  private Class1
  {}
  public static Class1()
 {
   if(myclass==null)
   {
      myclass=new Class1();
   }
   return myclass;
 }
}
如何在反射中实例化Class1类呢?

解决方案 »

  1.   

    // a singleton class
    public class Class1 

        private static Class1 myclass = new Class1();
        private Class1()  {} 
        
        public static Class1 GetInstance() 
        { 
            return myclass; 
        }
        public string Name { get { return "hello"; } }
    }// unit test class
    class UTest
    {
        static void Main()
        {
            Type t = typeof(Class1);
            Class1 c = t.InvokeMember("GetInstance", System.Reflection.BindingFlags.InvokeMethod, null, null, null) as Class1;        string name = c.Name;     //hello;
        }
    }
      

  2.   

    谢谢,不过还有点疑问,就是如果我不知道具体要反射的类的时候应该怎么办呢?
    比如通过添加参数Type t实现的话,那这个Type t是怎么取得的?
    是不是Class1.GetInstance().getType()?
    还有没有更好的办法