gpt4 book ai didi

Java等于一个类。是否 == 与 .equals 相同

转载 作者:IT老高 更新时间:2023-10-28 13:51:13 26 4
gpt4 key购买 nike

我们可以对 Class 变量而不是 equals 执行 == 并期望得到相同的结果吗?

例如:

Class clazz = xyz;

案例 A:

if(clazz == Date.class) {
// do something
}

案例 B:

if(Date.class.equals(clazz)) {
// do something
}

案例 A 和案例 B 在功能上是否相同?

最佳答案

类是最终的,所以它的 equals() 不能被覆盖。它的 equals() 方法继承自 Object,它读取

public boolean equals(Object obj) {
return (this == obj);
}

所以是的,对于一个类或任何不覆盖 equals(Object)

的类型来说,它们是相同的

要回答您的第二个问题,每个 ClassLoader 只能加载一个类一次,并且始终会为给定的完全限定名称为您提供相同的 Class。

关于Java等于一个类。是否 == 与 .equals 相同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7322469/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com