ce）名称、字段（fields），即物件的资料成员（成员变量）、可用方法，然后在运行根据目标物件自身的讯息决定如何处理。它还允许根据判断结果进行实例化新物件和相关方法的唿叫。反射主要用途就是使给定的程式，动态地适应不同的运行情况。利用物件导向建模中的多型（多态性）也可以简化编写分别适用于多种不同情形的功能代码，但是反射可以解决多型（多态性）并不适用的更普遍情形，从而更大程度地避免硬编码（即把代码的细节“写死”，缺乏灵活性）的代码风格。反射也是元编程的一个关键策略。
历史背景.