zoukankan      html  css  js  c++  java
  • 反射

    反射:框架设计的灵魂

    • 框架:半成品软件。可以在框架的基础上进行软件开发,简化编码。
    • 反射:将类的各个组成部分封装为其他对象,这就是反射机制。
      • 好处:
        • 可以在程序运行过程中,操作这些对象。
        • 可以解耦,提高程序的可扩展性。
    • 获取Class对象的方式:
      1. class.forName("全类名"):将字节码文件加载进内存,返回class对象
        1. 多用于配置文件,将类名定义在卑职文件中、读取文件,加载类。
      2. 类名.class:通过类名的属性来class获取
        1. 多用于参数的传递
      3. 对象.getClass():getClass()方法在Object类中定义着。
        1. 多用于对象的获取字节码的方式
    • 结论:
      • 同一个字节码文件(*.class)在一次程序运行过程中,只会被加载一次,不论通过哪一种方式获取的class对象都是同一个。

    获取字节码Class对象的三种方式

    • Class对象功能:
      • 获取功能:
        • 获取成员变量:
          • Field[] getFileds()
          • Field getField(String name)
          • Field[] getDeclareFields()
          • Field getDeclareField(String name)
        • 获取构造方法:
          • Constructor<?>[] getConstructors()
          • Constructor getConstructor(类<?>...parameterTypes)
          • Constructor getDeclaredConstructor(类<?>...parameterTypes)
          • Constructor<?>[] getDeclaredConstructors()
        • 获取成员方法:
          • Method[] getMethods()
          • Method getMethod(String name,类<?>...parameterTypes)
          • Method[] getDeclareMethods()
          • Method getDeclareMethod(String name,类<?>... parameterTypes)
        • 获取类名
          • String getName()
  • 相关阅读:
    【转】 测试人员的职业规划 --整理标注
    关于数据准备
    功能点算法及在软件测试中的应用
    MySQL常用命令大全
    Python学习笔记
    python 学习笔记 if语句
    一个男人关心的东西 决定了他的层次
    Oracle 计算两个时间的差值
    javascript对下拉列表框(select)的操作
    java需要掌握内容、核心不断更新中
  • 原文地址:https://www.cnblogs.com/Xiaoming0/p/14033548.html
Copyright © 2011-2022 走看看