Java 中 field.getType().getTypeName() 会输出什么
时间: 2024-02-23 22:59:56 浏览: 98
`field.getType().getTypeName()`方法会输出字段的类型的全限定名。例如,如果我们有一个类`Person`,其中有一个字段`age`,可以使用以下代码来获取该字段的类型的全限定名:
```java
import java.lang.reflect.Field;
public class Person {
private int age;
public static void main(String[] args) {
try {
Field field = Person.class.getDeclaredField("age");
String typeName = field.getType().getTypeName();
System.out.println(typeName);
} catch (NoSuchFieldException e) {
e.printStackTrace();
}
}
}
```
输出结果为`int`,说明`age`字段的类型为`int`。在代码中,我们首先使用`Class.getDeclaredField()`方法获取`age`字段的反射对象,然后使用`getType()`方法获取字段的类型,最后使用`getTypeName()`方法获取字段的类型的全限定名。由于`age`字段是`int`类型,因此输出结果为`int`。需要注意的是,如果字段不存在或者出现了错误,`getDeclaredField()`方法会抛出`NoSuchFieldException`异常,需要进行异常处理。
阅读全文