Java基础---反射

文章目录

  • 前言
  • 叙述
    • 是什么
    • 相关的类
    • Java中的Class三种获取方式
    • 注意
  • 小结

前言


叙述

是什么

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

相关的类

Java基础---反射_第1张图片

    


Java中的Class三种获取方式

  • 利用对象调用getClass()方法获取该对象的Class实例;
  • 使用Class类的静态方法forName(),用类的名字获取一个Class实例 ;
  • 运用.class的方式来获取Class实例,对于基本数据类型的封装类,还可以采用.TYPE来获取相对应的基本数据类型的Class实例;

注意

以通过反射获得Method对象为例,一般会提供四种方法:

  • getMethod(parameterTypes)
  • getMethods()
  • getDeclaredMethod(parameterTypes)
  • getDeclaredMethods()

getMethod(parameterTypes)用来获取某个公有的方法的对象
getMethods()获得该类所有公有的方法
getDeclaredMethod(parameterTypes)获得该类某个方法
getDeclaredMethods()获得该类所有方法。

带有Declared修饰的方法可以反射到私有的方法,没有Declared修饰的只能用来反射公有的方法。

其他的Annotation、Field、Constructor也是如此。


黑色背景

小结

感谢您的阅读~~

你可能感兴趣的:(设计模式)