代码如下
package execisetest;
import java.util.*;
class Person3{}
public class CollectionTest {
public static void main(String [] args){
ArrayList al=new ArrayList();
Person3 p=new Person3();
Integer it=3;
Class cl=Person3.class;
System.out.println(p);
System.out.println(it);
System.out.println(cl);
}
}
输出结果是
execisetest.Person3@497934
3
class execisetest.Person3
al p it 都是引用变量,但是输出时只有p为内存地址,al和it不是,al和it在内存中存储的就是输出的内容还是输出的内容是经过转化了的,若是转化了的,那么怎么才能得到他们自内存中存储的内容?作者: quanhui 时间: 2011-11-17 14:42
System.out.println(obj);
这个方法输出的时候应该去调用obj.ToString() 方法。ArrayList和Integer都是Java自己封装好的类,其中ToString()也是重写了的。而Person3这个类是自定义的,没有重写ToString() 所以会输出内存地址。