第六单元:反射+设计模式

一、反射

1. 反射(Reflection):允许在程序运行状态中,可以获取任意类中的属性和方法,并且可以操作任意对象内部的属 性和方法,这种动态获取类的信息及动态操作对象的属性和方法对应的机制称为反射机制。

2. 类对象 和 类的对象(实例)

(1) 类的对象(实例):基于某个类 new 出来的对象,也称为实例对象。

(2) 类对象:类加载的产物,封装了一个类的所有信息(包、类名、父类、接口、属性、方法、构造方法等)

3. 获取类对象的三种方式:

(1) 通过类的对象,获取类对象 Student s = new Student(); Class c = s.getClass();

(2) 通过类名获取类对象 Class c = 类名.class;

(3) 通过静态方法获取类对象 Class c=Class.forName(“包名.类名”); 注意:需要 权限类名:包名.类名

public class TestClass

{

public static void main(String[] args)

throws ClassNotFoundException

{

// 深入JVM实现原理 / JVM规范 // 通过反射技术 获取 类对象 Student s = new Student();

// 类的对象,实例 Class c=s.getClass(); // 获取类对象 System.out.println(c);

// 第二种方式:

Class c2=Class.forName("testflect.Student");

System.out.println(c2);

System.out.println(c==c2);

Class c3 = Student.class;

System.out.println(c3);

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值