作者kairy (血腹兽)
看板C_Sharp
标题[问题] 请问一段程式码
时间Wed Sep 24 18:19:33 2008
是从java看来的
是java的code
可以在执行期间透过这个method动态产生对应的Object
我有尝试用转换把java转成c#的语法
却没办法正常执行
想请教各位板友
这种写法如果用C#该如何达成呢?
谢谢
public static Object getObject(string className)
{
try
{
Class c = Class.forName(className);
Object obj = c.newInstance();
return obj;
}
catch(Exception e)
{
return null
}
}
--
Sound Horizon音律地平线
每一首歌就是代表着一个故事
钢琴谱
http://blog.xuite.net/kairytwo/MyScore
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.56.13.124
※ 编辑: kairy 来自: 61.56.13.124 (09/24 18:20)
1F:推 saitoh:你转出来的语法是怎样?不要告诉我你还是用Class.forName 09/24 20:40
2F:→ sryang:Assembly assembly = Assembly.Load(assemblyName); 09/24 22:16
3F:→ sryang:Object obj = assembly.CreateInstance(className); 09/24 22:17
4F:→ kairy:用vs的转换精灵换过来的code是 09/25 09:16
5F:→ kairy:System.Type c = System.Type.GetType(className); 09/25 09:16
6F:→ kairy:System.Object obj = System.Activator.CreateInstance(c); 09/25 09:16
7F:→ kairy:但是用这种方法跑出来的的c是null~就会有exception了 09/25 09:17
8F:推 saitoh:className要有完整的namespace 不能只有class的名称 09/25 09:20
9F:→ kairy:谢谢楼上,加上namespace就可行了,感恩 09/25 10:30
10F:→ kairy:看来转换精灵转的code没错:)~谢谢 09/25 10:31