美文网首页
Java--反射

Java--反射

作者: Qi0907 | 来源:发表于2017-05-31 17:08 被阅读0次

反射就是程序在运行时能够获取自身的信息,在java中,只要给定类的名字, 就可以通过反射机制来获得类的所有信息。
反射可以实现动态创建对象和编译,体现出很大的灵活性,通过反射,类中有什么信息,它就可以获得什么信息。

  1. 获取完整的包名,类名:
public class test {
           public static void main(String[] args) throws Exception {
              test t = new test();
              t.getClass().getName();    
           }
}
  1. 创建对象:
Class<?> clazz =Class.forName("XXX"); 
//创建此Class 对象所表示的类的一个新实例
Object obj = clazz.newInstance();
  1. 获取所有属性:
Class<?> clazz = Class.forName("XXX"); 
//获取所有的属性
Field[] fs = clazz.getDeclaredFields();
//获取属性为XXX的属性
Field idF = c.getDeclaredField("XXX"); 
  1. 获取所有方法:
Class<?> clazz = Class.forName("XXX"); 
Method method[] = clazz.getMethods();
  1. 调用某个类的方法:
Class<?> clazz = Class.forName("XXX"); 
Object obj = clazz.newInstance();
// 获取XXX类中的method1方法
Method method2 = clazz.getMethod("method1");
//调用obj(clazz.newInstance())类中method1方法
Method1.invoke(obj);
//如果这个类的方法method2需要传递参数
Method method2 = clazz.getMethod("method2", int A, String B);
method2.invoke(obj, paramter1, paramter2…);
  1. 操作某个类的属性:
Class<?> clazz = Class.forName("XXX"); 
//对AAA属性赋值
Field field = clazz.getDeclaredField("AAA");
field.setXXX(BBB);

相关文章

  • Java--反射

    反射就是程序在运行时能够获取自身的信息,在java中,只要给定类的名字, 就可以通过反射机制来获得类的所有信息。反...

  • Java--反射

    反射 定义: java反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,...

  • Java--反射机制(一)——反射 API

    一、概述 1、Java反射机制(Java-Reflect): 在运行状态中,对于任意一个类,都能够知道这个类中的所...

  • 重拾Java--反射

    反射:框架设计的灵魂 框架:半成品软件。可以在框架的基础上进行软件开发,简化编码 反射:将类的各个组成部分封装为其...

  • Java--反射(框架设计的灵魂)

    Java--反射(框架设计的灵魂) 博客说明 文章所涉及的资料来自互联网整理和个人总结,意在于个人学习和经验汇总,...

  • Java--反射(框架设计的灵魂)案例

    Java--反射(框架设计的灵魂)案例 博客说明 文章所涉及的资料来自互联网整理和个人总结,意在于个人学习和经验汇...

  • java--关于反射入门

    大家好,我是IT修真院深圳分院的学员,一枚正直纯洁善良的JAVA程序员。本次为大家带来关于反射的入门。 1.背景介...

  • Java--反射机制(二)——动态代理

    一、代理模式 定义:给某个对象提供一个代理对象,并由代理对象控制对于原对象的访问,即客户不直接操控原对象,而是通过...

  • Java--反射机制(三)——泛型使用

    一、泛型和Class类 从JDK 1.5 后,Java中引入泛型机制,Class 类也增加了泛型功能,从而允许使用...

  • Eclipse 开发基本配置与快捷键

    自动提示Window -->> Preferences -->> Java-->> Editor-->> Cont...

网友评论

      本文标题:Java--反射

      本文链接:https://www.haomeiwen.com/subject/qvsjfxtx.html