十八.反射

本文详细介绍了Java反射机制,包括其原理、主要类如Class、Field、Method和Constructor的使用,以及类加载的过程和各个阶段的任务。通过反射,可以在运行时动态地获取类信息、创建对象和访问成员,但这也可能导致性能影响。同时,文中提到了反射调用的优化策略和通过反射访问类的属性与方法的实例。
摘要由CSDN通过智能技术生成

一. 反射机制

1.1 Java Reflection

1.2 Java 反射机制原理示意图

1.3 Java 反射机制可以完成

  1. 在运行时判断任意一个对象所属的类。
  2. 在运行时构造任意一个类的对象。
  3. 在运行时得到任意一个类所具有的成员变量和方法。
  4. 在运行时调用任意一对象的成员变量和方法。
  5. 生成动态代理。

1.4 反射相关的主要类

1.5 反射优点和缺点

优点: 可以动态的创建和使用对象(也是框架底层核心),使用灵活,没有反射机
制,框架技术就失去底层支撑。
缺点: 使用反射基本是解释执行,对执行速度有影响。

1.6 反射调用优化-关闭访问检查

二. Class 类

2.1 基本介绍

2.2 Class 类的常用方法

三. 获取 Class 类对象

四. 哪些类型有 Class 对象

五. 类加载

5.1 基本说明

5.2 类加载时机

5.3 类加载过程图

5.4 类加载各阶段完成任务

5.5 加载阶段

5.6 连接阶段-验证

5.7 连接阶段-准备

JVM 会在该阶段对静态变量,分配内存并默认初始化 (对应数据类型的默认初始
值,如 0、0L、null、false 等)。这些变量所使用的内存都将在方法区中进行分
配。

5.8 连接阶段-解析

5.9 Initialization(初始化)

六. 通过反射获取类的结构信息

6.1 第一组: java.lang.Class 类

6.2 第二组: java.lang.reflect.Field 类

6.3 第三组: java.lang.reflect.Method 类

6.4 第四组: java.lang.reflect.Constructor 类

七. 通过反射创建对象

八. 通过反射访问类中的成员

8.1 访问属性 ReflecAccessProperty.java

8.2 访问方法 ReflecAccessMethod.java

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值