## 接口的使用
org.springframework.core.type.ClassMetadata

- 使用ClassMetadata的程序包
  程序包 | 说明
  --- | ---
  org.springframework.core.type | Core support package for type introspection.
  org.springframework.core.type.classreading | Support classes for reading annotation and class-level metadata.
  org.springframework.core.type.filter | Core support package for type filtering (e.g. for classpath scanning).

- - ### org.springframework.core.type中ClassMetadata的使用

    org.springframework.core.type中ClassMetadata的子接口
    限定符和类型 | 接口和说明
    --- | ---
    `interface` | `AnnotationMetadata` Interface that defines abstract access to the annotations of a specific class, in a form that does not require that class to be loaded yet.

    实现ClassMetadata的org.springframework.core.type中的类
    限定符和类型 | 类和说明
    --- | ---
    `class` | `StandardAnnotationMetadata` `AnnotationMetadata` implementation that uses standard reflection to introspect a given `Class`.
    `class` | `StandardClassMetadata` `ClassMetadata` implementation that uses standard reflection to introspect a given `Class`.

  - ### org.springframework.core.type.classreading中ClassMetadata的使用

    实现ClassMetadata的org.springframework.core.type.classreading中的类
    限定符和类型 | 类和说明
    --- | ---
    `class` | `AnnotationMetadataReadingVisitor` ASM class visitor which looks for the class name and implemented types as well as for the annotations defined on the class, exposing them through the `AnnotationMetadata` interface.

    返回ClassMetadata的org.springframework.core.type.classreading中的方法
    限定符和类型 | 方法和说明
    --- | ---
    `ClassMetadata` | MetadataReader.`getClassMetadata()` Read basic class metadata for the underlying class.

  - ### org.springframework.core.type.filter中ClassMetadata的使用

    参数类型为ClassMetadata的org.springframework.core.type.filter中的方法
    限定符和类型 | 方法和说明
    --- | ---
    `protected abstract boolean` | AbstractClassTestingTypeFilter.`match(ClassMetadata metadata)` Determine a match based on the given ClassMetadata object.
    `protected boolean` | RegexPatternTypeFilter.`match(ClassMetadata metadata)`