在 Java 中,java.lang.reflect.Type
是一个接口,它表示 Java 中的类型,包括原始类型、参数化类型、数组类型、类型变量和通配符类型等。以下是 Type
接口的几个主要实现类:
1. Class
类
Class
类是 Type
接口的一个实现类,它表示 Java 中的类或接口。在 Java 反射中,Class
对象用于表示运行时的类信息,你可以通过 Class
对象获取类的构造函数、方法、字段等信息。
示例代码:
import java.lang.reflect.Type;
public class ClassTypeExample {
public static void main(String[] args) {
Type type = String.class;
System.out.println(type);
}
}
2. ParameterizedType
接口的实现类
ParameterizedType
表示参数化类型,即带有类型参数的类型,例如 List<String>
。在 Java 反射中,当你需要处理泛型类型时,就会用到 ParameterizedType
。虽然 Java 没有提供 ParameterizedType
的公共实现类,但可以通过反射获取 ParameterizedType
实例。
示例代码:
import java.lang.reflect.ParameterizedType;
import java.lang.reflect.Type;
import java.util.ArrayList;
import java.util.List;
class MyClass {
private List<String> myList;
}
public class ParameterizedTypeExample {
public static void main(String[] args) throws NoSuchFieldException {