请问关于c的具体应用场景有哪些?
- 内容介绍
- 文章标签
- 相关推荐
本文共计343个文字,预计阅读时间需要2分钟。
以下是对原文的简化
以下为示例:Form1,Form2,Form3等继承自Form,可以通过以下方式创建Form子类的实例:`f=new Form1();`。如果存在多个子类,希望通过传递一个参数来创建实例,例如通过子类名称来创建实例,有什么方法吗?+方法
以下为例:
Form1,Form2,Form3……继承自Form,可以通过Form f=new Form1();等建立Form子类的实例,如果太多子类,希望通过传递一个参数,比如子类类名就可以建立实例,有什么办法?
方法一:利用反射
string str=“命名空间.Form1(Form2……)”; Type t=Type.GetType(str); Form f=Activator.CreateInstance(t);
这样就可以实现想要的了,str为变量,当然,传参时需要加上命名空间
方法二:利用泛型
T CreateForem<T>() where T : Form, new()//这里的new用作约束 { return new T(); }
然后可以调用Form f=CreateForm<参数>();//参数为Form1,Form2,Form3等。
以上这篇c# 以类名为参创建父类相同的类的实例代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持易盾网络。
本文共计343个文字,预计阅读时间需要2分钟。
以下是对原文的简化
以下为示例:Form1,Form2,Form3等继承自Form,可以通过以下方式创建Form子类的实例:`f=new Form1();`。如果存在多个子类,希望通过传递一个参数来创建实例,例如通过子类名称来创建实例,有什么方法吗?+方法
以下为例:
Form1,Form2,Form3……继承自Form,可以通过Form f=new Form1();等建立Form子类的实例,如果太多子类,希望通过传递一个参数,比如子类类名就可以建立实例,有什么办法?
方法一:利用反射
string str=“命名空间.Form1(Form2……)”; Type t=Type.GetType(str); Form f=Activator.CreateInstance(t);
这样就可以实现想要的了,str为变量,当然,传参时需要加上命名空间
方法二:利用泛型
T CreateForem<T>() where T : Form, new()//这里的new用作约束 { return new T(); }
然后可以调用Form f=CreateForm<参数>();//参数为Form1,Form2,Form3等。
以上这篇c# 以类名为参创建父类相同的类的实例代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持易盾网络。

