如果需要使用 aClass<T>
作为 a 键的一部分,Map
那么定义hashCode
and的正确方法是什么equals
?
AClass<T>
继承了Object
检查引用相等性并将内存地址作为哈希码返回的那些,但在我看来,不清楚 a 的有意义的定义equals
和hashCode
定义是什么Class<T>
。
我应该使用theClass.getClass().hashCode();
例如(我们有Class<T> theClass;
)来使用实际实例的方法吗?
但这似乎不是正确的做法。
例如在javadoc中Class<T>
:
每个数组也属于一个类,该类被反映为一个由具有相同元素类型和维数的所有数组共享的 Class 对象
因此,在某些情况下Class<T>
,对象之间似乎共享相同的内容?那么遵循的方法是什么?也许使用theClass.hashCode()
和theClass.equals()
使用引用相等?这里完全不确定。