1.模式
何为模式?模式就是编程中固定的套路。
2.何为单例模式?
是一个对象的创建模式,保证对象始终唯一,不能创建第二个对象的软件模式称为单例模式
单例:软件中唯一一个对象,称为单例
2.案例
package singleton;
/**
* 案例:单例模式
*
*/
public class SingltonDemo {
public static void main(String[] args) {
Foo foo = Foo.getFoo() ;
Goo goo = Goo.getGoo() ;
System.out.println("foo:" + foo.getClass().getName() + "," + "goo:" + goo.getClass().getName()) ;
}
}
//懒惰式加载:饱汉式,在需要时加载。
class Foo {
private static Foo foo ;
public Foo() {
}
public synchronized static Foo getFoo() {
if(foo == null) {
foo = new Foo() ;
}
return foo;
}
}
//非懒惰式:饿汉式,在创建时就加载
class Goo {
private static Goo goo = new Goo() ;
public Goo() {
}
public static Goo getGoo() {
return goo ;
}
}