如果你执行:
System.out.println(someObj.toString());
你可能会看到类似的输出
someObjectClassname@hashcodenumber
我的问题:hashCode 数字显示在那里有什么具体原因吗?
最佳答案
对象哈希码是唯一的标准标识符,可以让您在Java 中区分不同的任意对象。它不一定是唯一的,但相等的对象通常具有相同的哈希码。
默认的 toString()
方法显示对象类及其哈希码,以便您可以有希望地区分不同的对象实例。由于默认情况下它也用于错误消息中,因此这很有意义。
查看hashCode()
method的描述了解更多信息。
关于java - 为什么默认的 Object.toString() 包含哈希码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4712139/