可能重复:
Does Java guarantee that Object.getClass() == Object.getClass()?
我知道你应该一般使用equals()
,但是有两种Class<?>
对象可以与equals()
相等但不等于==
吗?
编辑:我特意想知道是否存在两个类对象
Class<?> cl1 = ...
Class<?> cl2 = ...
cl1.equals(cl2) -> true
cl1 == cl2 -> false
这似乎不似乎涵盖了可能的重复问题。 (这是密切相关的)
同样,
}someObject.getClass()
可能 像Method.getReturnType()
这样的反思行动。
答案 0 :(得分:-2)
所有对象都具有标识(对象在内存中的位置)和状态(对象的数据)。 ==运算符始终比较标识。 equals的默认实现也会比较身份。
更全面的解释: http://www.javapractices.com/topic/TopicAction.do?Id=17