zoukankan      html  css  js  c++  java
  • 【反射】

    JAVA 反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为 java 语言的反射机制。
    要想解剖一个类,必须先要获取到该类的字节码文件对象。而解剖使用的就是 Class 类中的方法.所以先要获取到每一个字节码文件对应的 Class 类型的对象。
    利用 class 文件对象,去使用该文件中的成员变量,构造方法,成员方法。
    通过反射获取构造方法并使用:
    获取构造方法
    getConstructors
    getDeclaredConstructors
    创建对象
    newInstance()
    con.newInstance(“zhangsan", 20);
    通过反射获取成员变量并使用:
    获取所有成员
    getFields,
    getDeclaredFields
    获取单个成员
    getField,
    getDeclaredField
    修改成员的值
    set(Object obj,Object value)
    将指定对象变量上此 Field 对象表示的字段设置为指定的新值。
    通过反射获取成员方法并使用:
    获取所有方法
    getMethods
    getDeclaredMethods
    获取单个方法
    getMethod
    getDeclaredMethod
    暴力访问
    method.setAccessible(true);
    终身学习者
  • 相关阅读:
    django email用法
    django ImageField用法
    django集成微博内容
    python读写zip文件
    读写文件
    404渲染
    bzoj1297 / P4159 [SCOI2009]迷路
    bzoj1009 / P3193 [HNOI2008]GT考试
    poj2115 C Looooops(exgcd)
    bzoj1407 / P2421 [NOI2002]荒岛野人(exgcd)
  • 原文地址:https://www.cnblogs.com/zuixinxian/p/11275217.html
Copyright © 2011-2022 走看看