创建和销毁对象
–静态工厂
优势:
静态工程方法与构造器不同的第一大优势
他们有名称.如果构造构造的产生本身没有确切的描述正返回的对象,具有适当名称的静态工厂会更容易使用,产生的代码更易阅读静态工程方法与构造器不同的第二大优势
不必在每次调用它们都创建一个新的对象.- 静态工程方法与构造器不同的第三大优势
它们可以返回类型的任何子类型对象,这样我们在选择返回对象的类时就有了更大的灵活性
- 静态工程方法与构造器不同的第四大优势
在创建参数化类型的时候,它们使代码更加简洁
- 静态工程方法与构造器不同的第四大优势
缺点:
- 类如果不含公有或者受保护的构造器,就不能被子类化
- 静态工厂与其他的静态方法实际上没有任何区别
public class SingletonClass{
private static SingletonClass instance=null;
public static SingletonClass getInstance()
{
if(instance==null)
{
synchronized(SingletonClass.class)
{
if(instance==null)
instance=new SingletonClass();
}
}
return instance;
}
private SingletonClass(){
}
}