我们使用System.out.println(o)时,经常得到类似的输出结果
bbb@a6d511
我们看一下jdk里面 Object类的toString方法
如果你的类或父类不实现toString则会输出类的名字加上 hashCode 码
我们在看看hashCode
是一个本地方法,如果你不实现自己的hashCode,则会根据机器不同,出现不同的结果
bbb@a6d511
我们看一下jdk里面 Object类的toString方法
- public String toString() {
- return getClass().getName() + "@" + Integer.toHexString(hashCode());
- }
我们在看看hashCode
- public native int hashCode();
本文深入探讨了Java中Object类的toString方法及hashCode方法的工作原理。当使用System.out.println(o)打印对象时,如果没有覆写toString方法,则默认输出类名加对象的hashCode值。hashCode方法是一个本地方法,如果不自定义,则其值可能因运行环境而异。
483

被折叠的 条评论
为什么被折叠?



