Java反射

1 反射到底是什么

官方:

所谓的Java的反射机制,其实指在运行状态中,对于任意一个类,都能够知道这个类的属性和方法;对于任意一个对象,都能调用它的属性和方法;这种动态获取信息以及调用方法的功能就称之为java的反射机制。

大白话:

反射当中包含了”反“,所以你想要知道什么是”反“,你就要先明白什么是”正“

(1)什么是”正“

一般情况下,我们使用某个类的时候,就必须要知道他是什么类,用来做什么。使用的时候直接对这个类进行实例化,之后使用这个类的对象直接进行操作。

Person p = new Person();
p.showInfo();

上面这个例子,就是我们正常使用的时候,对一个类的对象初始化,我们把这个理解为”正“。

(2)什么叫做”反“

一开始并不知道这个类的对象是什么,所以自然没有办法通过”new“来创建一个对象。这个时候我们时候我们还是希望创建这个对象,就必须要使用jdk底层提供的反射的API来进行创建。

Class clazz = Class.forName("包名.类名");
Person p = clazz.newInstance();

第一和第二种方式创建出来的对象完全一样。

所以,什么是反射?

反射就是你运行的时候才知道你要操作的类是什么,并且在类运行的时候才获取到类的完整的构造,并调用对应的方法。

2 Class
2.1 创建Class对象的3种方式(Class)

2.2 最简单的创建对象——调用空构造

2.3 指定构造函数创建对象

2.4 获取或者设置一个属性的值

设置和获取到public的属性

2.5 获取和设置一个私有的属性

2.6 获取和调用方法

2 Class
2.1 创建Class对象的3种方式(Class)
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值