public class ClassScanner extends Object implements Serializable
Constructor and Description |
---|
ClassScanner()
构造,默认UTF-8编码
|
ClassScanner(String packageName)
构造,默认UTF-8编码
|
ClassScanner(String packageName,
Filter<Class<?>> classFilter)
构造,默认UTF-8编码
|
ClassScanner(String packageName,
Filter<Class<?>> classFilter,
Charset charset)
构造
|
Modifier and Type | Method and Description |
---|---|
Set<Class<?>> |
scan()
扫描包路径下满足class过滤器条件的所有class文件
|
static Set<Class<?>> |
scanPackage()
扫描该包路径下所有class文件
|
static Set<Class<?>> |
scanPackage(String packageName)
扫描该包路径下所有class文件
|
static Set<Class<?>> |
scanPackage(String packageName,
Filter<Class<?>> classFilter)
扫描包路径下满足class过滤器条件的所有class文件,
如果包路径为 com.abs + A.class 但是输入 abs会产生classNotFoundException 因为className 应该为 com.abs.A 现在却成为abs.A,此工具类对该异常进行忽略处理 |
static Set<Class<?>> |
scanPackageByAnnotation(String packageName,
Class<? extends Annotation> annotationClass)
扫描指定包路径下所有包含指定注解的类
|
static Set<Class<?>> |
scanPackageBySuper(String packageName,
Class<?> superClass)
扫描指定包路径下所有指定类或接口的子类或实现类,不包括指定父类本身
|
void |
setClassLoader(ClassLoader classLoader)
设置自定义的类加载器
|
void |
setInitialize(boolean initialize)
设置是否在扫描到类时初始化类
|
public ClassScanner()
public ClassScanner(String packageName)
packageName
- 包名,所有包传入""或者nullpublic ClassScanner(String packageName, Filter<Class<?>> classFilter)
packageName
- 包名,所有包传入""或者nullclassFilter
- 过滤器,无需传入nullpublic static Set<Class<?>> scanPackageByAnnotation(String packageName, Class<? extends Annotation> annotationClass)
packageName
- 包路径annotationClass
- 注解类public static Set<Class<?>> scanPackageBySuper(String packageName, Class<?> superClass)
packageName
- 包路径superClass
- 父类或接口(不包括)public static Set<Class<?>> scanPackage(String packageName)
packageName
- 包路径 com | com. | com.abs | com.abs.public static Set<Class<?>> scanPackage(String packageName, Filter<Class<?>> classFilter)
packageName
- 包路径 com | com. | com.abs | com.abs.classFilter
- class过滤器,过滤掉不需要的classpublic void setInitialize(boolean initialize)
initialize
- 是否初始化类public void setClassLoader(ClassLoader classLoader)
classLoader
- 类加载器Copyright © 2021. All rights reserved.