您的位置:首页 > 其它

Activator.CreateInstance 方法

2015-10-08 09:25 381 查看
Activator.CreateInstance 方法 (Type)

使用与指定参数匹配程度最高的构造函数来创建指定类型的实例。
命名空间:System

程序集:mscorlib(在 mscorlib.dll 中)

C#

public static Object
CreateInstance (Type type)

Activator.CreateInstance 泛型方法 ()

注意:此方法在 .NET Framework 2.0 版中是新增的。
创建类型的一个实例,该类型由指定的泛型类型参数指定。
命名空间:System

程序集:mscorlib(在 mscorlib.dll 中)

C#

public static T
CreateInstance<T> ()
Activator.CreateInstance

(Type)实例

输入一个类的名称为参数,返回一个相应的类的实例。

这在工厂模式中是非常有用的,这样,可以使程序有更高的扩展性


/*


* Created by SharpDevelop.


* User: 19004991


* Date: 2009-8-6


* Time: 9:10


*/


using System;




namespace ActivatorCreateInstance


{


public interface IObject


{


void printName();


}




public class ClassExam
: IObject


{


private string name="default
name";




public ClassExam()


{


}




public ClassExam(string name)


{


this.name = name;


}




public void printName()


{


Console .WriteLine (this.name
);


}


}




public class Program


{


public Program()


{


}




public static void Main(string[]
args)


{


// TODO:
Implement Functionality Here




IObject obj1=(IObject)Activator.CreateInstance(System.Type.GetType
("ActivatorCreateInstance.ClassExam"));




obj1.printName();




IObject obj2=(IObject)Activator.CreateInstance(System.Type.GetType("ActivatorCreateInstance.ClassExam"),newstring[]{"seted
new name"});




obj2.printName();




Console.Write("Press
any key to continue . . . ");


Console.ReadKey(true);


}


}


}

网上代码System.Type.GetType内为"ActivatorCreateInstance.ClassExam,ActivatorExample"编译失败
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: