JAVA中常用的反转类

JAVA中常用的反转类

java中长用的反转类主要有三个:Class、Method和Field。

这三者其实构成了面向对象的三个基本要素:类、方法和域。三者是一种组合关系,一个Class包含若干个Method和若干个Field。

通常,我们用到反转时的起点便是Class。有Class,可以获得对method以及field的access。 同时,需要知道的常识便是,java类都有一个Class对象,通过getClass()方法即可得到。

 

如 Class class = this.getClass();

 

之后可以获得参数等等

 

 Field fields[] = class.getFields() 或 Field field = clsss.getField(String name);

 

还可动态生成方法: Method method = class.getMethod(String name,Class argumentsType[] );

 

此方法大有用途,我们可以根据传进来的方法名name以及参数类型动态地生成我们想要的函数名,从而形成对函数的按需调用。即,我们可以按照我们的需要传进来不同的函数名即参数类型,从而生成不同的函数,以致调用不同的函数。可以实现对函数的”多态”与按需调用。

 

 相应的方法生产之后,以下代码便可 完成具体的方法的调用。方法映射,或是 函数映射 在spring等这些注入式框架中 用得很多。用过spring的人应该有体会。自己在开发一些 controller是 也都用得找。

 

同时,在抽象工厂 这种设计模式中,类反射 函数反射 都 大有用途。

 

 

当然,得到一个Class对象,还可以通过Class.forName(String name),其中,name必须是全名,或全称,如com.longway.President类。 此外,我们还应该想到Type类,与以上三者结合起来,可能会发挥很大作用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值