Java源代码中究竟是什么“.class”

时间:2014-01-29 11:01:38

标签: java reflection

我在SO& S冲浪我在Java中发现了如下语法:

String.class.getDeclaredField("value");

我无法理解它是如何工作的

示例:

System.out.println(); out中是PrintWriter的System类中的静态变量

任何人都可以解释String.class.getDeclaredField("value");Field类的返回对象是什么意思吗?

我只是看了&我在String类中找不到类属性(字段)。

它究竟在做什么?

提前致谢。

2 个答案:

答案 0 :(得分:1)

String.class是一个代表String类的文字,类型为Class<String>getDeclaredField()是在类Class上定义的方法。

另见:What is a class literal in Java?

文字在Java Language Specification 15.8.2

中定义

答案 1 :(得分:0)

查找Java Reflection API和Class.getDeclaredField()