为何我用newInstance返回对象的时候会报错呢?

[复制链接]
查看11 | 回复3 | 2009-8-2 01:12:21 | 显示全部楼层 |阅读模式
为何我用newInstance返回对象的时候会报错呢?
如题
dao工厂:
public class DaoFactory {
public static Object getInstance(String name) throws Exception{
return Class.forName(name).newInstance();
}
}
在action这样调用:
MessageDAO messageDAO=(MessageDAO)DaoFactory.getInstance("MessageDAOImpl");
其中MessageDAO是MessageDAOImpl的接口。
daoFactory和MessageDAOImpl放在同一个包下的。
报的错是:
ClassNotFoundException --MessageDAOImpl---
youngmaster007,我打算用的就是String name,你用Object obj的话我这个工厂就没有意义了...

回复

使用道具 举报

千问 | 2009-8-2 01:12:21 | 显示全部楼层
出错应该是在forName() ,name只是类的名字 而forName()参数要求的是全名 所以应该把包名加在name前面!...
回复

使用道具 举报

千问 | 2009-8-2 01:12:21 | 显示全部楼层
public class DaoFactory { public static Object getInstance(Object obj) throws Exception{ return Class.forName(obj).newInstance(); } }...
回复

使用道具 举报

千问 | 2009-8-2 01:12:21 | 显示全部楼层
报的什么错?...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行