zoukankan      html  css  js  c++  java
  • 聊聊Java反射

    1. 反射是Java最重要的特性。通过Java反射可以在运行时知道一个类的所有成员和方法,知道一个对象的类类型、成员和方法的所有信息,进而调用对象的方法或生成对象的代理或包装类。
    2. Java是面向对象语言,除了静态变量或原始数据类型外都是完全面向对象的。每个类定义也都是Class的实例变量,它表示类的类定义,类的方法、成员变量、构造函数都可以抽象理解为对象,其中Method代表类成员方法对象的类类型,Filed代表成员变量对象的类类型,Constructor代表构造函数对象的类类型;
    3. 获取一个类的类类型可以通过它的静态变量class实现,比如A.class;获取一个对象的类类型可以通过调用它的getClass()方法实现;获取通过一个类全限定名通过Class.forName获取它的类类型。知道类类型即Class对象后,就可以知道它的所有成员变量或方法,进而进行各种操作。
    4. 反射的最大的作用是根据配置文件生成对象或动态加载类,从而解耦类与类或模块与模块间耦合,尽可能的将异常延后。比如JDBC中常通过Class.fornName方法动态的加载驱动类,从而方便的可以替换驱动类,并且不会因为具体的驱动类不存在而无法编译。
    5. class1.getMethods()返回该类对象所有的public类型的方法,包括从父类继承的方法。class1.getDeclaredMethods()返回所有该类自己定义的方法,不包含父类继承过来的方法。
      JAVA反射学习网摘
      Java基础之反射
  • 相关阅读:
    python数据分析常用包之Matplotlib
    python数据分析常用包之Scipy
    python数据分析常用包之Pandas
    python数据分析常用包之numpy
    常见算法之‘插入类排序’
    CRM管理系统流程.king_admin
    常见算法之‘选择排序’
    常见的算法排序之交换类排序
    常用正则表达式
    scss在ide的命令参数
  • 原文地址:https://www.cnblogs.com/doit8791/p/8636465.html
Copyright © 2011-2022 走看看