天天看点

反射机制前言1.概念2.作用3.使用场景4.获取Class类5.反射机制的常用类6.使用后记

前言

需要了解反射机制的前提,首先得了解编译期和运行期两个概念。

编译期:由.java到.class的过程。

运行期:执行了.class

1.概念

反射的概念:在运行期,对于任意一个类都能获取到他的所有属性和方法,并且任意一个对象都能调用其任意一个方法。

2.作用

  1. 运行时判断对象所属的类。
  2. 运行时构造一个类的对象。
  3. 运行时判断一个类所具有的成员变量和方法。
  4. 运行时调用任意一个对象的方法。

3.使用场景

反射机制前言1.概念2.作用3.使用场景4.获取Class类5.反射机制的常用类6.使用后记

对于开发框架通用性的补充说明:

java中的对象有两种类型:1.编译时类型和运行时类型。编译时类型指在对象声明时所采用的类型。2.运行时类型指对象赋值时所采用的类型。

因此,程序在编译期无法预知该对象和类的真实信息,只能通过运行时来发现该对象和类的真实信息,而其真实信息(对象的属性和方法)通常通过反射机制来获取,这就是反射的核心功能。

可理解为运行时的增强。

反射机制前言1.概念2.作用3.使用场景4.获取Class类5.反射机制的常用类6.使用后记

4.获取Class类

使用反射机制最重要的就是Class类,获取class对象的方式有三种。

反射机制前言1.概念2.作用3.使用场景4.获取Class类5.反射机制的常用类6.使用后记
反射机制前言1.概念2.作用3.使用场景4.获取Class类5.反射机制的常用类6.使用后记

第一种本末倒置,第二种不具有通用性,常用第三种。

第一种,就是为了获取到class对象来创建对象,但是要获取class却需要创建一个具体对象。

第三种:

5.反射机制的常用类

反射机制前言1.概念2.作用3.使用场景4.获取Class类5.反射机制的常用类6.使用后记

6.使用

利用获取到的class对象,调用5中的API,实现具体操作。

后记

先到这儿,后边有时间再补充。若还是没看明白的。

下面附b站中老师的讲解。

b站课程

可以参考的书籍《java高级程序员面试笔试宝典》中对class API的阐述很详细。