美文网首页
02_java反射

02_java反射

作者: lww文 | 来源:发表于2020-09-28 17:05 被阅读0次


反射:将类的各个组成部分封装为其他 对象 这就是反射机制

好处:

1:在程序运行过程中操作这写对象  例如:idea 我们可以快速知道 类中的方法

 2:解耦 填好 程序的可扩展性

1:获取class 对象的方式

1;Class.forname("全类名")

 1.1:多用于配置文件 将类名配置在文件中 加载力

2:通过类名的属性获取  类名.class

2.1: 多用于参数传参

3:对象.getClass()  :getClass()在obect中定义的

3.1 多用于字节码对象获取

结论:

同一个字节码文件(*.class)在一次程序运行过程中 只会被加载一次 不论通过哪一种 方式获取class 对象都是一个

=======================

2;Class对象功能

1:获取成员变量们

  1.1getFields()获取所有public  修饰的成员变量

  1.2getField(string name)获取某个  public  修饰的 成员变量

  1.3:getDeclaredFields()获取所有的成员变量 不考虑修饰符

  1.4:getDeclaredField(string name)

2;获取构造方法们

  2.1" getConstrusctors()

  2.2   getConstrusctor(类名)

 2.3   getDeclaredConstrusctors()

 2.4 2.3   getDeclaredConstrusctor(类名)

3:获取成员方法们

3.1 getMehods();

3.2 getMehod(string f方法名,类名);

3.3 getDeclaredMehods()

3.3 getDeclaredMehod (string f方法名,类名)

4:获取类名

getName();

=============

Field 成员变量

操作:   修饰的 成员变量

obj:一般都是 Field所属的类的 类对象

 1:设置值: void set(Object obj,Object value)

 2:   获取值  get(Object obj)

3;忽略访问对象修饰符安全检查  setAccessible(true)  暴力反射

操作:   获取所有的成员变i量

如果获取的是 私有修饰符的 成员变量 需要 忽视修饰符的安全检查

setAccessible(true)  暴力反射

=============

Construsctor :获取构造方法

操作

1:创建 对象  new instance(Object ...)

如果构造函数中需要参数   (string name,int age)等等参数

在使用反射创建构造函数 需要传递 参数的类型的class l例如:

String.class, int.class

===============

Method 方法对象

1:执行方法  method.invok(Object ob, Object...args)

2:获取方法名称  

method.getName();

案例1

创建配置 文件

2:加载配置文件获取信息  3:使用反射执行方法

相关文章

  • 02_java反射

    反射:将类的各个组成部分封装为其他 对象 这就是反射机制 好处: 1:在程序运行过程中操作这写对象 例如:idea...

  • Java基础之反射

    Java基础之反射 反射基本介绍 反射的使用通过反射调用属性和方法通过反射获取配置文件 反射基本介绍 Java反射...

  • 镜面反射矩阵的推导

    镜面反射是以镜面作为反射平面,实物与反射物到反射平面的距离相等,实物与反射物方向相反,所以,反射矩阵由反射平面确定...

  • reflect.go包学习_之二 指针操作提高反射性能 反射应用

    reflect.go包学习_之二 指针操作提高反射性能 反射应用 反射创建实例 反射信息、反射调用方法、反射修改值...

  • Java互联网公司-经典面试题附答案

    基础:Java 反射?反射有什么缺点?你是怎么理解反射的(为什么框架需要反射)?优点:反射具有解耦性,缺点:反射属...

  • Java反射与joor反射库的使用

    java原生反射的使用 反射构造对象 反射方法 反射字段 joor反射库的使用 github:https://gi...

  • Java反射

    什么是反射? 反射的作用? 反射性能优化?

  • 反射三定律

    反射第一定律:反射可以将interface类型变量转换成反射对象 反射第二定律:反射可以将反射对象还原成inter...

  • 反射

    1.反射是什么?反射的定义,概念 2.为什么要学反射? 3.怎么使用反射?反射的使用

  • 一周岁前做好两件事,孩子就不会语言迟缓,保证口齿伶俐

    与语言发展相关的原始反射有四个:张口反射、足跖反射、抓握反射和手拉反射,每个反射的发生、发展和整合都是次第进行的,...

网友评论

      本文标题:02_java反射

      本文链接:https://www.haomeiwen.com/subject/gvmduktx.html