Java获取对象内存地址
haseCode()方法获取并非对象内存地址
hashCode方法的主要作用是为了配合基于散列的集合一起正常运行,获取对象散列的地址,并非实际内存地址。
java直接打印对象,结果是十六进制的散列地址值
public class ObjectTest {public static void main(String[] args) {Object obj = new Object();System.out.println(obj);System.out.println(Integer.toHexString(obj.hashCode();}
}
haseCode()方法无法证明两个对象是否为同一个对象
public class ObjectTest {public static void main(String[] args) {String s1 = "hello";String s2 = new String("hello");System.out.println(s1.hashCode());System.out.println(s2.hashCode());}
}
打印的值都相等,无法区分两个不同的对象
Java 如何获取对象内存地址
maven引入jol工具包
<dependency><groupId>org.openjdk.jol</groupId><artifactId>jol-core</artifactId><version>0.9</version>
</dependency>
示例代码
public class ObjectTest {public static void main(String[] args) {String s1 = "hello";String s2 = new String("hello");System.out.println(s1==s2);System.out.println(s1.equals(s2));System.out.println("--获取内存地址--");System.out.println(VM.current().addressOf(s1));System.out.println(VM.current().addressOf(s2));}
}
Java获取对象内存地址相关推荐
- 深入分析Java中打印对象内存地址 System.identityHashCode()方法
文章目录 地址是什么样子的 toString()方法 重写hashCode identityHashCode与真正的内存地址 参考 地址是什么样子的 我们知道system.out.println(ne ...
- JAVA获取JVM内存空间和物理内存空间
一.获取JVM内存空间 系统环境:WIN JDK版本:1.8re 直接调用Runtime中相应的方法即可: public long maxMemory() Returns the maximum ...
- 【java】java获取对象属性类型、属性名称、属性值
java获取对象属性类型.属性名称.属性值 获取属性 修饰符:[在Field[]循环中使用] String modifier = Modifier.toString(fields[i].getModi ...
- flask-admin初次使用遇到的几个小问题(显示对象内存地址,编辑无法正确跳转)
1.flask-admin显示列时如果为列为relationship ,就会显示对象内存地址 我的orm类的 当我想显示Item的place.plaec_name 时我一开始是这样写的 ...
- 获取项目服务器ip,java获取服务器ip地址
java获取服务器ip地址 内容精选 换一换 如果IP经过NAT/WAF,则只能获取到NAT/WAF转化后的IP地址,无法获取到NAT/WAF前的IP地址.如果客户端为容器,只能获取到容器所在主机的I ...
- Java获取项目当前请求的全部URL,Java获取Referer,Java获取完整链接地址URL
Java获取项目当前请求的全部URL,Java获取Referer,Java获取完整链接地址URL >>>>>>>>>>>>> ...
- JAVA获取主机IP地址
JAVA获取主机IP地址 java 获取主机IP地址工具类 import org.springframework.web.context.request.RequestAttributes; impo ...
- Java获取对象的内存地址
前言 我们知道在Java中对于synchronized对于同步方法锁的是当前的实例对象. 例如以下这段代码: import java.util.concurrent.TimeUnit;public c ...
- Java中打印对象内存地址
Object的hashCode()默认是返回内存地址的,但是hashCode()可以重写,所以hashCode()不能代表内存地址的不同 System.identityHashCode(Object) ...
最新文章
- 【高级数据类型2】- 10. 接口
- EntLib 3.1学习笔记(6) : Security Application Block
- opencv中的CommandLineParser类用法
- m.soudashi.cn 地图_SEO人员怎样挖掘大量关键词库
- hdu 2191 多重背包
- (pytorch-深度学习系列)pytorch实现对Fashion-MNIST数据集进行图像分类
- 利用python求解度中心性
- Java学生实训平台_基于jsp的学生实训平台-JavaEE实现学生实训平台 - java项目源码...
- 原生JS 将canvas生成图片
- kd-Tree 【专题@AbandonZHANG】
- 阿里巴巴如何基于 Kubernetes 实践 CI/CD
- 计算机社团招新个人简历,大学社团招新面试自我介绍五篇
- 蔬菜大棚原理_温室大棚的原理是什么?
- vue脚手架的自定义配置
- Java实现八皇后问题
- 可汗学院公开课:统计学笔记——线性回归、卡方分布、方差分析
- awb入门(2).色彩恒常
- python非线性可分支持向量机模型(实现iris分类)
- c中纠结不清的点(1)
- 长安“战疫”网络安全卫士守护赛部分writeup
热门文章
- [附源码]Python计算机毕业设计电商后台管理系统
- 整齐美观的资料文件收纳法
- c/c++,char型数组转化为int类型
- rs485与modbus流程图_多个modbus主机与从机用RS485通讯,怎么办?-专业自动化论坛-中国工控网论坛...
- CentOS7.3服务器内网离线部署docker和容器
- notepad++汉字在终端显示乱码解决办法
- cas14510-06-6|8-羟基喹啉-2-甲醛|8-Hydroxyquinoline-2-carbaldehyde黄色结晶粉末
- html的imgie浏览器上显示不出图片,而其他chrome和360安全浏览器都可以
- docker出现问题:Docker容器stop,kill都没用,停止删除不了解决方案
- [AHOI2005] 航线规划 题解