Create an instance of a class from a string

后端 未结 8 1327
别跟我提以往
别跟我提以往 2020-11-22 02:53

Is there a way to create an instance of a class based on the fact I know the name of the class at runtime. Basically I would have the name of the class in a string.

8条回答
  •  遇见更好的自我
    2020-11-22 03:21

    ReportClass report = (ReportClass)Activator.CreateInstance(Type.GetType(reportClass));
    

    why do u want to write a code like this? If you have a class 'ReportClass' is available, you can instantiate it directly as shown below.

    ReportClass report = new ReportClass();
    

    The code ReportClass report = (ReportClass)Activator.CreateInstance(Type.GetType(reportClass)); is used when you dont have the necessary class available, but you want to instantiate and or or invoke a method dynamically.

    I mean it is useful when u know the assembly but while writing the code you dont have the class ReportClass available.

提交回复
热议问题