首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > 移动开发 >

可否动态的创建一个类

2012-09-21 
能否动态的创建一个类请问能否根据动态获得的参数而动态的创建一个类?java.lang.Class.forName(classname

能否动态的创建一个类
请问能否根据动态获得的参数而动态的创建一个类?java.lang.Class.forName("classname").newInstance()
复杂一些的,比如:根据提供的ClassName, field name, method name and parameters' name 使用java.lang.reflect包,创建真正的“动态”类和实例。不写了,这方法太累,有兴趣自己去看java doc了。java在这一块也算比较完善了,但还是比不上.net,.net的反射设计比较清晰、干净。
5 楼 shangmw 2007-05-05   这位楼上说的是在工程里面已经编写了一个类,然后再在程序运行的时候动态的创建。而我的意思是原本工程里面没有这个类,(也就是不能通过java.lang.Class.forName("classname").newInstance()来取得这个类的实例)而是在程序里面现行的创建一个类

仔细的想想,在JAVA代码里面都是用的经过编译的二进制代码,如果这样的话,我上面想的根本行不通,因为没有经过编译。 6 楼 LucasLee 2007-05-05   shangmw 写道这位楼上说的是在工程里面已经编写了一个类,然后再在程序运行的时候动态的创建。而我的意思是原本工程里面没有这个类,(也就是不能通过java.lang.Class.forName("classname").newInstance()来取得这个类的实例)而是在程序里面现行的创建一个类

仔细的想想,在JAVA代码里面都是用的经过编译的二进制代码,如果这样的话,我上面想的根本行不通,因为没有经过编译。

也不是完全不可以.
你可以读取一个java源文件参数,动态调用javac编译它,然后用反射实例化,调用.
有点类似IDE(eclipse)的用法. 7 楼 headsome 2007-05-06   楼主的关键词是J2ME

在CLDC 1.0中,是不支持反射的,就是说不能动态创建类

在CLDC 1.1中,支持很少的反射,效率很低。

综上,在J2ME程序中,不要琢磨反射的事情了~ 8 楼 Godlikeme 2007-05-06   j2me里面搞这些干啥?有时间还是考虑怎么能多弄几个对象用吧。

热点排行