c# 以類名為參創立父類相反的類的實例代碼。本站提示廣大學習愛好者:(c# 以類名為參創立父類相反的類的實例代碼)文章只能為提供參考,不一定能成為您想要的結果。以下是c# 以類名為參創立父類相反的類的實例代碼正文
以下為例:
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# 以類名為參創立父類相反的類的實例代碼就是分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持。