腾飞工作室

Java反射总结

总结Java反射中的常见用法

类型判断

clazz.typeName == "void"                // Void
clazz.typeName == "java.lang.Boolean"    // 布尔类型
clazz.isEnum()                            // 枚举类型
clazz.isArray()                            // 数组

反射实例化枚举类型

每个枚举的值都是一个单例,这里其实并不是实例化而是把已经存在的单例匹配出来

//假设我们定义了一个枚举
enum UserSexEnum {
    WOMAN, MAN
}

 //反射获取 UserSexEnum 里面所有的实例
 Enum[] enums=UserSexEnum.class.getEnumConstants() 
 enums.any {it.name()=="WOMAN"} //判断是否存在一个实例是 WOMAN

本文出自 “腾飞工作室” 博客,请务必保留此出处:http://tfgzs.net/2017/06/26/Java反射总结/