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
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。