java 反射的作用

反射:顾名思义,就是能从影子看到他的本尊(类和方法的取名通常都有特定的含义)   反编译就是运用反射实现的    自定义或者自描述的

反射的内部实现

Person ->Class

public class  Class

{

       Field:描述属性

       Method:描述方法

        Constructor:描述构造器

}

与反射有关4个类:Class(获取实例,字段,方法)   Field(与字段相关的操作) 

                                 Method(与方法相关的操作)   Constructor(与构造函数相关的操作)


反射的3个作用:

1.修改内存中的对象属性(private)

2.直接调用对象的方法(非常规的)

3.创建对象的实例


利用反射获取实例的3个方法:

1.Class.forName("类的完整名称")   必须进行显式的异常处理

             返回与此类相关联的Class对象

利用此反射方法获取对象实例可实现通过XML文档对实例的进行配置

<person class="test.Person"></person>

Person   p1=Class.forName("test.Person").newInstance();

2.Person p=new Person();

p1.getClass();//获得一个与Person类相关联的Class对象,利用此方法可以创建与先前对象一样类型的对象

Person p2=p1.getClass().newInstance();

3.Person.class  这就是一个与Person有关的Class对象   Class<Person>

Person.class.newInstance();


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值