Java 为什么String.class==”;测试;。班

Java 为什么String.class==”;测试;。班,java,class,Java,Class,有人知道为什么==符号在.class比较中起作用吗 此外,getClass()方法的javadoc 返回此文件的运行时类 反对返回的类对象是 被静态锁定的对象 系统的同步方法 代表班级。 实际的结果类型是类=进行身份比较,并且(通常)每个类只有一个副本。“静态同步方法锁定的对象”就是它所说的;声明为static和synchronized的方法将尝试锁定该对象。我认为可能存在一些静态变量,这是getClass()返回的。这就是为什么objectA.getClass()==objectB.getCl

有人知道为什么
==
符号在
.class
比较中起作用吗

此外,
getClass()
方法的javadoc

返回此文件的运行时类 反对返回的类对象是 被静态锁定的对象 系统的同步方法 代表班级。


实际的结果类型是
=
进行身份比较,并且(通常)每个类只有一个副本。“静态同步方法锁定的对象”就是它所说的;声明为static和synchronized的方法将尝试锁定该对象。

我认为可能存在一些静态变量,这是getClass()返回的。这就是为什么objectA.getClass()==objectB.getClass()。因为它与它们的类是同一个静态对象(类对象)。
谢谢你的回答。我认为Arams的回答是正确的。返回此对象的运行时类。返回的类对象是由所表示类的静态同步方法锁定的对象。
Number n = 0; 
Class<? extends Number> c = n.getClass();