分类: Java
2010-02-25 17:33:27
super.toString()方法的返回值为 getClass().getName() + '@' + Integer.toHexString(hashCode()) 类名@哈希值 而this表示当前类,相当于一个指针,指像该类的内存地址。 v是ArrayList的一个实例对象。v.add()表示要往集合中加入新的值。 把生成的几个demo对象全放在集合中。然后在通过System.out.println()打印出每个demo的地址~
回答者: - 2008-9-9 11:43
1.this就是对象本身,放在return后面的话,这里this就自动调用了this.toString()这个方法了 你这句语句是错误的,返回的内容是一个无限长度死循环的字符串 调用super.toString()就是调用父类的toString()方法,也就是Objece的toString()方法,这样的话,这个方法就正确了。。。 2.因为任何java对象的打印都是自动调用类本身的toString()方法的,这里首先调用了v的toString()方法,而v是List类型,list类型的打印就是调用对象本身的toString方法,也就是调用Demo的toString方法,所以用到了new Demo里面的方法,而且就是toString方法
回答者: - 2008-9-9 11:46
this就是当前对象的引用. Demo d = new Demo(); 这句话分解一下: Demo d; 定义了一个引用d,d的类型为Demo d = new Demo();new Demo()创建了一个Demo对象.然后将d这个引用指向这个对象 this就代表某个类当中的当前的引用.