如何获得java对象的内存地址

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何获得java对象的内存地址相关的知识,希望对你有一定的参考价值。

public class 对象地址 

public static void main(String[] args) 

System.out.println("\\n\\t\\t==========如何获取对象地址?==========\\n");
init();
//初始化!
private static void init()

//演示:创建对象!
Dog d1=new Dog();
Dog d2=new Dog("白色");

d1.show();
d2.show();

System.out.println("\\n对象内存地址-->>对象所属类型:"+d1+"<<--这就是对象内存中哈希值16进制的地址");
System.out.println("对象内存地址-->>对象所属类型:"+d2+"<<--这就是对象内存中哈希值16进制的地址\\n");

System.out.println("d1对象所属类:"+d1.getClass());
System.out.println("d1对象所属地址十进制:"+d1.hashCode()+"转成16进制就和上面一样了\\n");

System.out.println("d2对象所属类:"+d2.getClass());
System.out.println("d2对象所属地址十进制:"+d2.hashCode()+"转成16进制就和上面一样了\\n");




//测试类,小狗!
class Dog

String color="黑色";
Dog()
Dog(String color)this.color=color;
void show()

System.out.println("这是一个"+color+"的小狗");

参考技术A 直接print的就是

java 根据访问的地址 获得cookie

java 根据访问的地址 获得cookie 本次访问的cookie
例如ieHTTPHeader 工具中获得的cookie

最好使用纯java 不要web的

这个很简单啊,如果你有HttpServletRequest对象的引用,调用 Cookie[] cookies = request.getCookies();就可以获取到cookie信息。追问

HttpServletRequest对象 是需要地址 初始化的吗? 我怎么能够获得HttpServletRequest对象 需要引入外部jar 包吗 ? 能给我个小例子吗 ? 没太懂

追答

你的问题描述的不是很清楚,有几点疑问:
1、你是自己提供WEB服务,还是访问其他web服务时要获取cookie
2、你是要获取自己的电脑发起的请求时的cookie还是任何访问某个网站的的任意用户的cookie?

追问

我是作为用户访问 网站
例如 我只知道网站的网址
我访问他的时候会生成一个cookie 的 字符串 我想得到这个字符串
动态的或取这个cookie , cookie 随着我更换IP代理 是变化的

追答

1、需要你自己搭个代理服务器,你访问网站通过你的代理服务器访问,你的代理服务器可以拿到请求对象。
2、你自己想办法拦截你电脑所有的http请求,这个通过浏览器插件,或者更底层调用操作系统,对网络IO进行监听。

参考技术A 使用httpclient开源框架,都封装好了,网上教程也多,随便百度一下

以上是关于如何获得java对象的内存地址的主要内容,如果未能解决你的问题,请参考以下文章

java String 内存地址问题?如何获取 String 内存地址!

Java中如何打印对象内存地址?

内存地址和Java HashCode [duplicate]有什么区别

java的类模板,对象,实例内存地址分析

java获取浏览器地址栏地址

如何检查和解决java虚拟机内存溢出的问题