@xtccc
2017-01-04T13:27:25.000000Z
字数 616
阅读 1837
Scala
目录
假设有一个基类Base,我们希望在classpath中找出Base有哪些派生类。
可以借助ClassUtil来实现。
package cn.gridx.scala.lang.classes.classutilsimport org.clapper.classutil.ClassFinderobject FindSubClass extends App {val finder = ClassFinder()val classes = finder.getClasses()val classMap = ClassFinder.classInfoMap(classes)val plugins = ClassFinder.concreteSubclasses("cn.gridx.scala.lang.classes.classutils.Base", classMap)plugins.foreach(println)}trait Baseclass A extends Baseclass B extends Base
输出为:
cn.gridx.scala.lang.classes.classutils.B
cn.gridx.scala.lang.classes.classutils.A
