A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 450888086 初级黑马   /  2018-11-29 13:24  /  772 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

理解Class类及其常用方法
Class类
在Object类中定义了以下的方法,此方法将所有子类继承:public final Class getClass()以上的方法返回值的类型是一个Class类,此类是Java反射的源头,实际上所谓反射从程序的运行结果来看也是很好理解,即:可以通过对象反射求出类的名称正常方式: 引入需要的"包类"名称--->通过new实例化--->取得实例化对象反射方式: 实例化对象--->getClass()方法--->得到完整的"包类"名称对照镜子后可以得到的信息:某个类的属性、方法、和构造器、某个类到底实现了哪些接口。大于每个类而言,
JRE都是为其保留一个不变的Class类型的对象。一个Class对象包含了特定某个类的有关信息。
Class本身也是一个类
Class对象只能由系统建立对象
一个类在JVM中只会有一个Class实例
一个Class对象对应的是一个加载到JVM中的一个.class文件
每个类的实例都会记得自己是由哪个Class实例所生成
通过Class可以完整地得到一个类中的完整结构
Class类的常用方法
* Class对象功能:
* 获取功能:
  1. 获取成员变量们
   * Field[] getFields() :获取所有public修饰的成员变量
   * Field getField(String name)   获取指定名称的 public修饰的成员变量
   * Field[] getDeclaredFields()  获取所有的成员变量,不考虑修饰符
   * Field getDeclaredField(String name)  
  2. 获取构造方法们
   * Constructor<?>[] getConstructors()  
   * Constructor<T> getConstructor(类<?>... parameterTypes)  
   * Constructor<T> getDeclaredConstructor(类<?>... parameterTypes)  
   * Constructor<?>[] getDeclaredConstructors()  
  3. 获取成员方法们:
   * Method[] getMethods()  
   * Method getMethod(String name, 类<?>... parameterTypes)  
   * Method[] getDeclaredMethods()  
   * Method getDeclaredMethod(String name, 类<?>... parameterTypes)  
  4. 获取全类名
   * String getName()



0 个回复

您需要登录后才可以回帖 登录 | 加入黑马