01_反射_01_加载类

【简述】

一个类有多个组成部分,例如:成员变量、方法、构造方法等。反射就是加载类,并剖析出类的各个组成部分。

 

【加载类的三种方式】

* Java中有一个Class类用于代表某一个类的字节码。

* Class类既然代表某个类的字节码,它就自然会提供加载某个类的字节码的方法:forName( ); forName( )方法用于加载某个类的字节码到内存中,并使用class对象进行封装。

*另外两种得到class对象的方式:

  类名.class

  对象.getClass()

如下所示:

 

【Class对象】

提供的常用方法:

//从类中获取构造方法

public Constuctor getConstructor(Class<?>..parameterTypes);

//从类中获取方法

public Method getMethod(String name,Class<?>...parameterTypes);

//从类中获取成员变量(属性)

public Field getField(String name);

获取的构造方法、方法、成员变量(属性)分别用Constructor、Method、Field对象表示。

注意:

getDeclaredConstructor:返回指定参数类型、所有声明的(包括private构造函数

getConstructor:返回指定参数类型、具有public访问权限的构造函数

posted @ 2016-08-12 21:10  HigginCui  阅读(209)  评论(0编辑  收藏  举报