java反射这个东东,在很多初学者面前,可能并没有在意,有的认为它太难理解,有的认为它并不怎么使用,但是既然反射能够被称为java的灵魂这一点,自然已经凸显它的重要性了。
其实在使用反射时很简单,就那几个固定的方法,重要的是我们必须明白我们什么时候用它,用了它会给我们带来什么好处和它不好的地方!首先我们来看看它的使用方法:
反射的使用:1.获得一个类的类模版
Class c = 对象名.getClass();
Class c = Class.forName(包名+类名); ---常用
我们也可以根据模版来获取其对应的类对象: c.newInstance();
2.根据类模版获取类的信息:
获取类的属性:
Filed类----c.getFiled(String pname) 获得指定属性(公共字段)
Filed类----c.getDeclearedFiled(String pname) 获得指定属性(所有权限字段)
Filed[]----c.getFileds(String pname) 获得所有属性(公共字段)
Filed[]----c.getDeclearedFileds(String pname) 获得所有属性(所有权限字段)
获取类的方法:
Method类----c.getMethod(String methodName,class[] params) 获得指定方法(公共方法)
Method类----c.getDeclearedMethod(String methodName,class[] params) 获得指定方法(所有方法)
Method[]----c.getMethods(String methodName,class[] params) 获得所有方法(公共方法)
Method[]----c.getDeclearedMethods(String methodName,class[] params) 获得所有方法(所有权限方法)
反射的好处,其实就一句话:高类聚低耦合。把代码动态化,提高了代码的灵活度减少了代码量!
反射的缺点,代码灵活度增大了,自然会带来效率的问题,因此,大量使用反射会带来效率低的问题!
其实在我们实际项目中,随着许多框架的使用,我们程序员很少在手动实现反射,但我们又无时无刻在使用反射,比如JDBC数据库连接第一句代码就在用反射,框架的使用,大量配置文件的出现,也是在使用反射去创建类对象,只是我们在使用时并没有手动去实现反射,这些工作都由框架来实现了!
分享到:
相关推荐
java 反射使用的整理和委托实现接口反射的例子
java反射 java反射java反射java反射java反射java反射java反射java反射java反射java反射java反射java反射java反射java反射
java反射机制应用,文档中列举了使用java反射机制的各个应用场景,加以代码实例,使用学习非常方便。
java之反射优化(缓存思路)源码 编程中,抽象是一个重要思想。一个无状态(业务less)的抽象化工具方法,往往可以起到减少代码量的作用,使得程序员能更加focus更加重要的业务逻辑中去
关于java反射的一些基本使用 JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法;这种动态获取的信息以及动态调用对象的方法的功能...
java反射机制详解与应用
JAVA 反射机制应用JAVA 反射机制应用JAVA 反射机制应用JAVA 反射机制应用JAVA 反射机制应用JAVA 反射机制应用JAVA 反射机制应用
java反射与EJBjava反射与EJBjava反射与EJBjava反射与EJBjava反射与EJBjava反射与EJB
java反射机制java反射机制.zipjava反射机制.zipjava反射机制.zipjava反射机制.zipjava反射机制.zipjava反射机制.zipjava反射机制.zipjava反射机制.zipjava反射机制.zipjava反射机制.zipjava反射机制.zipjava反射机制...
Java反射经典实例 Java反射经典实例 Java反射经典实例 Java反射经典实例
这是一本关于Java反射机制论文集合的书。其中包含基本的理论及各种实例。... 关键字有:Java Java反射机制 Java反射 Java反射理论 Java反射实例 Java反射例子 反射原理 反射 网络论文 集合 汇总 总结 Class。
代码为JAVA反射的一个DEMO,适合初学者临摹学习,还附有properties的创建方法,比较基础。
Java反射机制的使用和学习方法,从底层阐述Java反射机制的原理,让我们更加了解Java反射
java反射java反射java反射java反射java反射
java反射,获取所有属性、方法以及List集合类
反射实例-JAVA反射机制.doc反射实例-JAVA反射机制.doc反射实例-JAVA反射机制.doc反射实例-JAVA反射机制.doc反射实例-JAVA反射机制.doc反射实例-JAVA反射机制.doc反射实例-JAVA反射机制.doc反射实例-JAVA反射机制.doc...
反射非常强大和有用,很多java框架中都有反射的影子,例如spring、mybatis等等,JDBC利用反射将数据库的表字段映射到java对象的getter/setter方法。Jackson,GSON,Boon等类库也是利用反射将JSON文件的属性映射到java...
java 反射demo
(通过反射获取无参构造方法并使用) (通过反射获取带参构造方法并使用) (通过反射获取私有构造方法并使用) (通过反射获取成员变量并使用) (通过反射获取无参无返回值成员方法并使用) (通过反射获取带参带返回值成员...
java反射理论及实现