java反射小悟

**上午看了一会java反射和代理,然后去银行办了一张卡,这里记下一点小感悟。

场景:我们去银行办业务时候,柜台上会放置两个小盒子,一个用来输入密码,一个用来业务办完后对服务人员进行评价。现在假设,银行要增加其他功能,比如在办卡同时绑定支付宝,会给予用户一定优惠(这里只是假设,可能不合理,这里只是作为例子,各位看官不要纠结于这个业务是否合理)。那么现在那个输入密码和评价的小匣子已经不能满足需求了,需要再增加小匣子才行。如果银行又增加了N个业务呢,是不是需要增加N个小匣子,显然不合理。那要怎么办呢。

解决方案:在柜台上放置一个触摸板,当用户需要输入密码时,弹出输入密码的界面读取用户密码,当需要用户评价时,弹出评价界面读取用户评价,同理,在触摸板开发出相应的app来对应银行现有和扩展的业务,这样就不用增加小匣子了。

总结:java反射机制和代理应用了同样的原理,在程序运行时动态的加载需要的类、方法、字段,属性等。这样就避免了硬编码,提高了程序的灵活性。spring的IOC就应用了java的反射机制。

不知道各位看官看懂没。如果没懂,或者有不理解的地方,欢迎留言讨论。**

时间: 2024-11-05 19:03:38

java反射小悟的相关文章

java反射小例子

package com.txwsqk.reflect; public class Car { private String brand; private String color; private int maxspeed; public Car(){} public Car(String brand, String color, int maxspeed){ this.brand = brand; this.color = color; this.maxspeed = maxspeed; }

java反射小练习

package com.gmw; import java.lang.reflect.Constructor; import java.lang.reflect.InvocationTargetException; public class ReflectTest { void test(String name,String word){ System.out.println(name+"说"+word); } public ReflectTest(String name) { } pu

Java反射的小故事

Java反射的小故事: 首先定义一个Java类 1 package com.xiaoysec.test; 2 3 public class Person { 4 private String name; 5 private String sex; 6 private int id; 7 8 public String getName() { 9 return name; 10 } 11 12 public void setName(String name) { 13 this.name = na

Java反射入门

Java这么多高灵活性,很多都是利用反射来实现的,所谓的反射是指,编译期间完全未知的classes,运行时,对任一个类(根据类名-字符串),能够知道这个类的所有属性和方法:对于任一个对象,都能够调用它的任意一个方法和属性. 简而言之,Java反射机制主要提供了以下功能: ?  在运行时判断任意一个对象所属的类:obj.getClass() ?  在运行时构造任意一个类的对象: ?  在运行时判断任意一个类所具有的成员变量和方法: ?  在运行时调用任意一个对象的方法. 下面我们先用一个简单小例体

JAVA反射机制—学习总结

最近收到很多关于Java反射机制的问题留言,其实Java反射机制技术方面没有太多难点,或许是大家在学习过程中遗漏了细小知识点,导致一些问题无法彻底理解,现在我们简单的总结一下,加深印象. 什么是反射机制? "JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法:对于任意一个对象,都能够调用它的任意方法和属性:这种动态获取信息以及动态调用对象方法的功能称为java语言的反射机制."我们通过一些例子,更好理解反射机制.Class类 我们知道Java是一门面向对象

java反射之Constructor简单应用

Constructor类是java反射中重要的类,它是对类中构造器的描述的类.类似于Method(对类中方法的描述的类),Field(对类中属性的描述的类). 通过创建Constructor的对象实例,我们可以创建源对象. 小测试demo: package com.wtd; import java.lang.reflect.Constructor; import java.lang.reflect.InvocationTargetException; import java.util.Array

探索Java反射机制

Java反射机制,可以说我们平常开发中用的很多,尽管作为开发人员,我们并没有什么感觉,那是因为框架的设计者,已经为我们封装好了,我们只需要用去调用一下就可以了.以前也用到过反射,包括自己也写过,也学到过,但是我感觉都比较浅,今天有时间,我觉得有必要去慢慢的深入了解一下. 我们把能够分析类能力的程序称为反射(reflective).反射机制功能及其强大,简单说几个反射的用途: 1.在运行中分析类的能力: 2.在运行中查看对象,例如编写一个通用的tostring方法: 3.实现通用的数组操作代码:

Java反射学习总结

广州疯狂软件教育Java培训,iOS培训分享Class类是Reflection API中核心的类,他位于java.lang.Class列出一些常用的方法.- getName() : 获得类的完整名字- getFields() : 获得类的public类型的属性- getDeclaredFields() : 获得类的所有属性- getMethods() : 获得类的public类型的方法- getDeclaredMethods() : 获得类的所有方法- getMethod(String name

java反射详解 (转至 http://www.cnblogs.com/rollenholt/archive/2011/09/02/2163758.html)

本篇文章依旧采用小例子来说明,因为我始终觉的,案例驱动是最好的,要不然只看理论的话,看了也不懂,不过建议大家在看完文章之后,在回过头去看看理论,会有更好的理解. 下面开始正文. [案例1]通过一个对象获得完整的包名和类名 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 package Reflect; /**  * 通过一个对象获得完整的包名和类名  * */ class Demo{     //other codes... } class hello{     pu