• java反射


    一、概念:java反射机制:JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。

    要想解剖一个类,必须先要获取到该类的字节码文件对象。而解剖使用的就是Class类中的方法.所以先要获取到每一个字节码文件对应的Class类型的对象。反射就是把java类中的各种成分映射成一个个的java对象。【通俗点:正常的:知道这个类->就可以通过创建对象来调用类中的方法和属性。反射:通过已知对象,获取到相应的类,进而调用该类的其它:方法和成员。】

    二、反射机制获取类的三种方法:
      1)直接通过类名.class的方式得到:clazz = person.class;#clazz其实就是我们所获得的类,只是为了与java的class不冲突而叫这个而已。
      2)通过对象的getClass()方法获取,这个使用的少(一般是不知道什么类型的时候才用):Object obj = new Person();clazz = obj.getClass();
      3)通过全类名获取,用的比较多,但可能抛出classNotFoundExcetion异常:clazz = Class.forName("com.java.reflection.person");

    备注:
      1)利用Class类的newInstance()方法创建类对象时,调用的类必须要有无参的构造器。
      2)类加载器:classLoad是用来把class装载进jvm的,JVM规范定义了两种类型的类装载器:启动类装载器bootstrap和用户自定义装载器user-defined class loader。

  • 相关阅读:
    python 文件目录/方法
    python文件
    python模块
    python数据结构
    python函数
    python迭代器和生成器
    python循环语句
    python控制语句 if
    python数字
    个人课程总结
  • 原文地址:https://www.cnblogs.com/yangrongkuan/p/12026369.html
Copyright © 2020-2023  润新知