Java中类的显式动态加载的两种方式
来源:互联网 发布:阿里云企业邮箱收费吗 编辑:程序博客网 时间:2024/06/03 05:33
一、利用Class.froName方法
eg:
try {
Class cl = Class.forName("edu.buaa.etei.wsrv.test.SonClass");
FatherClass cls = (FatherClass) cl.newInstance();
cls.test();
} catch(Exception e ){}
二、结合Java的反射机制
eg:
import
Stirng className = "test.Test";
try {
Class cla = Class.forName(className);
// 得到test()方法的调用入口。
Method method = cla.getMethod("test", null);
// 用invoke执行test方法,ret是返回值(如果test方法返回void,则ret==null)
Object ret = method.invoke(cla.newInstance(), null );
}catch(Exception e ){}
说明:
Method的invoke就好比是c语言中获得方法的指针一样!
一般步骤是,首先声明你所要调用方法的参数的类类型数组
如果你的方法要使用一个int型数据作为参数,那么
Class[] args={Integer.class};
然后,使用classname加载该类Class myclass1 = Class.forName("aaa");
接着Method mymethod1 = myclass1.getMethod("methodname",args);
最后声明方法参数Object args2={new Integer(5)};
mymethod1.invoke(myclass1.newInstance(),args2);就可以了
- Java中类的显式动态加载的两种方式
- Java的两种动态代理方式
- java动态代理的两种方式
- 【Unity】Unity中资源动态加载的两种方式之AssetsBundle
- Qt中使用Quick2动态加载QML组件的两种方式
- Flash动态加载swf文件的两种方式
- Windows与Linux动态库的两种加载方式
- Windows与Linux动态库的两种加载方式
- Android实现资源动态加载的两种方式
- Fragment 的两种加载方式 (静态加载,动态加载)
- WEB中加载ApplicationContext的两种方式
- 加载项目中配置文件的两种方式
- ListView中adapter加载数据的两种方式
- Java web开发加载图片路径的两种方式
- Spring中AOP的两种代理方式(Java动态代理和CGLIB代理)
- Spring中AOP的两种代理方式(Java动态代理和CGLIB代理)
- Spring中AOP的两种代理方式(Java动态代理和CGLIB代理)
- Spring中AOP的两种代理方式(Java动态代理和CGLIB代理)
- Hibernate对字段默认值的配置方法
- 3D Engine 的设计架构
- [ztjSQL]SQL Server 2005:你应该知道的13件事情
- 人生值得珍藏的80句话
- 大四了
- Java中类的显式动态加载的两种方式
- 3D游戏引擎剖析
- 基于Hibernate3.2 Hibernate tools 的使用
- Web Service的Handler配置
- 有关QueryInterface函数
- Petshop4.0系统架构设计
- windows api之文本和字体函数
- Eclipse中使用CVS 的一些注意事项
- Crystal Report TCrpeDS 的Error 717 的错误排除