class A
{
private A(){}//将本类的此构造函数修饰成private,这样其它类就不再创建本类的对象实例了,
private static A aa = new A();//即然其它类不能创建本类对象 ,那本类就在本类内自己创建一个对象以便使用,而且些对象被private修饰,外部类也不能直接使用本对象
public static A getInstance();//上一名创建了一个对象,应该是要使用的,但被private修饰,不能直接在本类外使用,那就要对外提供一方法来获得本类对象。
{ //而且此方法和要获得的对象都被static修饰,也就是在本类被加载进来的时候就拥有了本类对象和此方法。
return aa;
}
}
class B
{
public static void main(String[] args)
{
A.getInstance();//因为getInstance是static 方法,随A类的加载已被加载,而且B类中不能创建A类对象,所以可以用类名.getInstance(),获得A类对象。而且此对象唯一,
//属于单例设计模式。
}
}
|