帮忙看下.
有什么方法可以查看内存中的变量的地址吗?
class Sample {
long length;
public Sample(long l){length = 1;
}
public static void main(String [] args){
Sample s1,s2,s3;
s1=new Sample(21l);
s2=new Sample(21l);
s3=s2;
long m = 21l;
}
}
m 和 s1 的地址的引用是同一个吗?有什么办法可以看到?
问题点数:20、回复次数:6Top
1 楼trumplet(检查)回复于 2006-06-01 14:22:01 得分 0
m 是一个基本类型,s1 是一个类类型,二者不可能引用相同的地址。Top
2 楼aolin(傲霖)回复于 2006-06-01 14:25:53 得分 0
我也了解他们的类型是不同的,但是我想看他们的地址分别是什么?
有什么办法可以看吗?Top
3 楼trumplet(检查)回复于 2006-06-01 14:39:22 得分 0
没有办法。
对于一个类实例,System.out.println(s1); 结果是象这样的东西:test.Test@a90653,
也许就是地址吧。
Top
4 楼kele2536(可乐)回复于 2006-06-06 09:56:10 得分 0
用equals可以判断是否引用同一地址Top
5 楼kele2536(可乐)回复于 2006-06-06 12:29:31 得分 0
错了 应该是’==‘号 可以判断是否引用同一对象啊Top
6 楼wangMail_3366()回复于 2006-06-06 12:40:18 得分 0
没有办法。
对于一个类实例,System.out.println(s1); 结果是象这样的东西:test.Test@a90653,
也许就是地址吧。
………………………………………………………………………………………………………………
@符号后面的是s1对象的哈西码,不是内存地址
long m = 21;
这里变量m是一个基本变量,不是一个引用
想看地址,这个,基本上,比较难
Top




