博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Class 反射获得构造,方法,属性,内部类等
阅读量:7040 次
发布时间:2019-06-28

本文共 1661 字,大约阅读时间需要 5 分钟。

反射中获取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对象

转载于:https://www.cnblogs.com/javaxiaodoufu/p/7460912.html

你可能感兴趣的文章