Java中如何打印一个对象的内存地址呢?
下文笔者将讲述java中打印一个对象的内存地址的方法分享,如下所示:
java中无法获取对象的内存地址,我们只能获取hashcode,
然后将hashcode作为一个对象的内存地址,对外展示
实现思路:
Object中hashCode()默认返回内存地址,但由于子类继承Object类之后,可重写hashCode方法
所以我们还可以使用System.identityHashCode(Object)方法
获取原始的hashCode值
例:
package com.java265.other;
public class Test16 {
/**
* java265.com 示例程序
*
* @throws Exception
*/
public static void main(String[] args) throws Exception {
String a = "hello";
String b = "java";
String c = "java265.com";
String d = a + b;
System.out.println(c == d);
System.out.println(c.hashCode());
System.out.println(d.hashCode());
System.out.println(System.identityHashCode(c));
System.out.println(System.identityHashCode(d));
}
}
------运行以上代码,将输出以下信息-------
false
-1635674078
1197345268
617901222
1159190947
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。


