Class 反射获得构造,方法,属性,内部类等
Posted 盛夏光年2017
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Class 反射获得构造,方法,属性,内部类等相关的知识,希望对你有一定的参考价值。
反射中获取Class对象的方法===============================
1.静态----根据全路径获得-----------
Class clazz = Class.forName(String classpath全路径)
需要知道类的全路径,需要路径正确,否则抛出没有找到该类
2.类名.class
Class clazz = 类名.class
安全性高。性能好。推荐使用-------
3.对象名.getClass( )
Class clazz = 对象名.class
访问Class对应的类所包含的构造方法==============================
1.方法一
Constructor getConstructor(Class[]params)
返回Class对象指定的public构造方法 参数Class[]params与指定构造方法的参数一致
例子:
Constructor co=clazz.getConstructor(Class[]params)
clazz是Class的对象
2.方法二
Constructor[] getConstructors( )
返回该Class对象所表示的类的所有的public构造方法
3.方法三
Constructor getDeclaredConstructor(Class[]params)
返回该Class对象所表示的类的指定构造方法,与访问级别无关
4.方法四
Constructor[] getDeclaredConstructor()
返回该Class对象所表示的类的全部方法,与访问级别无关
从Class类中获取方法信息===============================================
1.方法一
Method getMethod(String name,Class[] params )
name是指定public方法的名称
2.方法二
Method[ ] getMethods( )
3.方法三
Method getDeclaredMethod(String name,Class[] params )
4.方法四
Method[ ]getDeclaredMethods( )
从Class类中获取属性信息================================================
1.方法一
Field getField(String name)
返回指定属性名的public属性
2.方法二
Field[] getFields()
3.方法三
Field getDeclaredField(String name)
4.方法四
Field[] getDeclaredField()
返回不考虑访问级别的所有属性
访问Class对应的类所包含的内部类==========================================
Class[] getDeclaredClasses();
返回该Class对象所对应类的全部内部类
访问Class对应的类所在的外部类
Class getDeclareingClass();
访问Class对象所对应类所继承的父类、所实现的接口等======================
int getModifiers()-----返回该类或接口所有的修饰符
Class[] getInterfaces()----返回对应类的全部接口
Package getPackage()------获取该类的包
String getName()-----返回类名
String getSimpleName------返回类的简称
Class getSuperclass()----返回该类的超类对应的Class对象
以上是关于Class 反射获得构造,方法,属性,内部类等的主要内容,如果未能解决你的问题,请参考以下文章