反射的基本知识

基本概念

反射是java在运行过程中的自我观察能力,通过class constructor field method 四个方法来获取一个类的各个组成部分。

  反射是在运行状态中对于任意一个类,都能知道这个类的所有属性和方法;对于任意一个对象都能调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为反射

作用:

反射的作用:

  1、可以得到类的全部成分并进行操作

  2、破坏类的封装型-----可以获取私有的构造器、方法、成员变量等

  3、做java框架

操作

1、加载类,获取类的字节码:class对象

  1. Class c1=类名.class
  2. 调用Class提供的方法:public static Class forName(String Package)
  3. Object提供的方法:public Class getClass();Class c3=对象.getClass()

2、获取类中的构造器,并对他进行操作

 

(1)getConstructors()方法:可以获取全部的public 修饰的构造器,在开发中很少使用

(2)getDeclaredConstructors()方法:获取全部构造器,只要存在就获取

(3)getConstructor()方法:获取某个构造器,且其只能被public修饰

(4)getDeclaredConstructor()方法:获取某个构造器,只要存在即可获取

在获取有参数的构造器时参数应写为    参数类型.class(例如  String.class),因为此时class就代表类型

初始化

提供newInstance()方法是用来实现初始化,setAccessible()方法设置为true时,表示禁止查询访问控制,即此时是私有化也可以进行初始化了

3、获取成员变量及其相关操作

4、获取类的成员方法并对其进行操作

和构造器、成员变量相同的

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值