谢军 发表于 2013-1-7 23:59
import java.util.*;
class DuiLie
{
private LinkedList link;定义了一个属性叫link,是LinkedList类型的,此时的link没有指向对象;在产生DuiLie对象时,为link进行了显示初始化作者: 张森 时间: 2013-1-8 13:10
private LinkedList link 这个是在栈内存中开辟一个空间,有一个引用link,但这个时候并没有指向任何对象。
link = new LinkedList() 这个就是给上面的栈内存中的link指向一个对内存中的具体对象。
LinkedList link=new LinkedList()? 因为你上面已经定了link了 在同一个作用域里面变量名不能重复作者: 罗利华 时间: 2013-1-8 14:07
import java.util.*;
class DuiLie {
private LinkedList link;
DuiLie()
{
link = new LinkedList();
}
}
这里你定义了一个私有的类的属性,只是一个属性而已,
它在栈空间中分配一个变量link,其它地方是没有的。
构造方法中的语句意思是说:将这个变量指向堆空间的一块区域,
像你这种写法和单例设计模式很近了,以下是一个单例模式,
public class Singleton {
private static Singleton instance = new Singleton();
public static Singleton getInstance() {
return instance;
}