Java .类-这种结构是什么?它是如何工作的?

Java .类-这种结构是什么?它是如何工作的?,java,java.lang.class,Java,Java.lang.class,我是编程新手,刚开始使用greenfoot(使用Java创建游戏的软件)。当我编写代码时,我必须使用greenfoot中构建的结构,该结构使用的参数描述为:java.lang.class,其中我必须键入ClassName.class。我试图通过查阅文档和许多其他来源来了解它是如何工作的,这是什么,但老实说,我什么都不懂。有没有人能简单地告诉我它是什么意思,以及像ClassName.class这样的构造是如何工作的?这是我第一次看到像这样使用点表示法,在我尝试引用其他类方法(例如:OtherCla

我是编程新手,刚开始使用greenfoot(使用Java创建游戏的软件)。当我编写代码时,我必须使用greenfoot中构建的结构,该结构使用的参数描述为:java.lang.class,其中我必须键入ClassName.class。我试图通过查阅文档和许多其他来源来了解它是如何工作的,这是什么,但老实说,我什么都不懂。有没有人能简单地告诉我它是什么意思,以及像ClassName.class这样的构造是如何工作的?这是我第一次看到像这样使用点表示法,在我尝试引用其他类方法(例如:OtherClass.method())时,我只看到点表示法。那么它是在每个类的实例变量中构建的还是类似的东西?提前谢谢

这叫一个
ClassName.class
提供对表示给定类的实例的访问。例如,
String.class
指的是
String
类的
class
实例。使用该对象,您可以做各种事情(比如通过反射在运行时找出其成员)。(FWIW,对象还提供了通过对象访问其类的
类的
实例。)

听起来您需要学习一本介绍Java基础知识的Java入门书。欢迎来到Stack Overflow!请拿着(你会得到一个徽章!),四处看看,仔细阅读,尤其是“当我写代码时,我必须使用greenfoot构建的结构,它使用的参数描述为:java.lang.class,在这里我必须键入ClassName.class”,显示总是比告诉好。展示你感到困惑的代码,并指出让你困惑的部分。@Mike我在写我自己的代码时,实际上正在阅读《与绿足有关的Java入门书》,但没有任何解释,只是“在这个层次上你不必知道”@schemaboi-也许你应该相信作者的话“你不必在这个层次知道这个”部分——大概是在他们奠定了足够的基础之后,他们会得到它。谢谢,你的答案稍微解释了一下。但是更具体地说:编译器是如何解释“.class”的,例如“String。class”?作为类“类”中的实例字符串的一个实例变量。"? 因为我真的不明白点符号是怎么工作的here@schemaboi-不,它不是一个实例变量。这是顶级语法,尽管它看起来像一个属性访问操作。它不是(因为类名没有引用对象)。请参阅答案中的第一个链接。