什么叫做单例呢,其实很简单.单就表示独一无二,在程序中把这种模式叫做单例,单例模式最常用的用2种:懒汉模式与饥汉模式,这2种模式差别不太大.下面就来看看单例设计模式的实现.
1.饥汉模式,代码如下
package org.lxh;
public class Singleton1 {
//防止被创建外部实例
private Singleton1() {
}
private static Singleton1 sin = new Singleton1(); //在内部定义一个实例
public static Singleton1 getInstance() { //提供一个供外部调用的静态方法
return sin;
}
}
2. 懒汉模式,代码如下
package org.lxh;
public class Singleton1 {
//防止被创建外部实例
private Singleton1() {
}
private static Singleton1 sin = null; //在内部定义一个实例
public synchronized static Singleton1 getInstance() { //提供一个供外部调用的静态方法
if(sin==null){
sin=new Singleton1();
}
return sin;
}
}
3.写一个测试类,查看测试结果
package org.lxh.test;
import org.lxh.Singleton1;
public class Test {
public static void main(String args[])
{
System.out.println(Singleton1.getInstance());
System.out.println(Singleton1.getInstance());
}
}
下面是效果截图
有问题的可以写评论.