scala反射API(2.10)是否提供了更简单的方法来搜索加载的类并将列表过滤到实现已定义特征的特定类?即;
trait Widget {
def turn(): Int
}
class Cog extends Widget {
def turn() = {
5
}
}
class Sprocket extends Widget {
def turn() = {
10
}
}
Run Code Online (Sandbox Code Playgroud)
我想在类库中搜索扩展Widget并实例化这些类的任何内容.所以我最终会得到一个Cog和的实例Sprocket.
我在Java中完成了类似的迭代,通过类目录,形成类名并使用Class.forName加载一个Class对象然后检查.我只是想知道scala反射API是否提供了更简单的搜索方式.到目前为止我看到的所有示例都始终从已知的类实例化开始,而不是从可用类的搜索开始.