java学习之反射机制

  •   什么是反射

      java程序可以在运行期间动态的加载、解析和使用一些在编译阶段并不确定的类型,这一机制被称为“反射(reflection)”或者“内省(introspection)”.

  •   反射机制提供的功能

    1,加载运行时才能确定的类型

    2,解析类的结构、获取其内部信息

    3,操作该类型或其实例

         1》访问属性

         2》调用方法

         3》创建新对象

  •     java.lang.class 类

       class类的实例用于表示运行时的JAVA数据类型,包括类、接口、数组、枚举、注解和基本数据类型

      在类加载时, Java虚拟机会自动创建相应的class对象

     java.lang.reflect包

    1,java.lang.reflect.fleld

    2,java.lang.reflect.Method

    3,java.lang.reflect.Costructor

    4,java.lang.reflect.Modifer

    5,java.lang.reflect.Array

 

  •    使用反机制的基本步骤
  1. 获取目标类型相应的class对象
  2. 调用Class对象内省方法获取目标类成员信息
  3. 访问目标类方法信息/操作目标类成
  •     例一

 

 

 

 

  •     例二

 

 

 

 

  •  获取CLASS对象

     针对引用数据类型

  1. 调用静态方法Class.ForName(String  (class 全称包括包名))
  2. 调用Object类中定义的getClass()方法
  3. 使用.class 表达式
    例:class c1 = String.class;
          class c2 = Person.class;
     

       

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值