日期:2014-05-20  浏览次数:20709 次

怎么查找接口所有实现类
一个接口 interface X

有几个实现类
   
  Aimpl,Bimpl,Cimpl
怎么通过程序去根据接口X寻找它几个实现类?

我主要想把几个实现类的路径和类名放在数据库里,如有一个任务表

id classzaa taskname
1 com.xx.Aimpl 发邮件
2 com.xx.Bimpl 发短讯
3 com.xx.Cimpl 记录日志 

如果能得到 interface X 几个实现类,然后在从任务表里找到想实现的类名,进行比较就可以动态找到该执行的实现类了

 
 

------解决方案--------------------
感觉就好比你是一个明星,然后有许多崇拜你的歌迷,你怎么知道到底有哪些歌迷是崇拜你的呢?
我觉得有两种情况:一种是你的歌迷脸上写着是你的fans,另一种情况就是去看到每个人心里想的
回到原题:我觉得只能通过扫描文件的方式;第一种情况就是实现接口的子类有固定的文件名格式,比如Aimpl,Bimpl,Cimpl都已impl结尾;第二种情况就是通过程序反编译class,看源码中是否实现某一接口。

不知道其他人有没有更好的做法。。。
------解决方案--------------------
不懂。。。。不太明白你的意思
------解决方案--------------------
个人觉得还是要遵循一定的规律才行。。。
------解决方案--------------------
eclipse 里有搜索,是可以搜索出对接口的引用的。
------解决方案--------------------
ctrl+t?