了解toString方法

时间:2017-03-27 16:59:52

标签: java

您能否解释以下代码行的含义

getClass().getName+"@"+Integer.toHexString(hashCode())

这是toString()方法在Object类中的实现方式,但我无法理解它如何调用hashCode()

2 个答案:

答案 0 :(得分:1)

返回由3个部分组成的字符串。

  1. 班级名称
  2. ' @'字符
  3. 对象的哈希码。 hashCode()是Object类的另一个方法(因此所有其他对象都继承它,因为所有东西都是Object的子类)。
  4. 您可以在java api文档中阅读更多内容。 https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html

答案 1 :(得分:0)

允许类的任何实例通过直接调用它来调用它自己的方法。您可以this.getClass()getClass()this.hashCode()hashCode()

getClass().getName()是反射(Reflection是程序在运行时检查自身的能力)从正在运行的程序中获取类的名称的方法。然后将其结果与字符串"@"和另一个字符串连接,该字符串是本机hashCode()实现的十六进制字符串表示。