单例模式是指在JVM中,该对象只有一个实例。现在举例说明下:
package com.qichao;
//'饿汉式'单例模式
public class MySingleton {
private static final MySingleton instance = new MySingleton();
private MySingleton(){
}
public static final MySingleton getInstance(){
return instance;
}
}
class NoSingleton{
public NoSingleton(){
}
private int id;
private String name;
public int getId(){
return id;
}
public void setId(int id){
this.id = id;
}
public String getName(){
return name;
}
public void setName(String name){
this.name = name;
}
}
//测试类
package com.qichao;
public class TestSingleton {
public static void main(String args[]){
System.out.println("========================================");
System.out.println("下面是使用单例模式,来调用类的实例");
System.out.println("========================================");
for(int i=0;i<6;i++){
int m=i+1;
System.out.println("第 "+m+" 次"+"得到的对象值为 "+MySingleton.getInstance());
}
System.out.println("========================================");
System.out.println("下面是不使用单例模式,来调用类的实例");
System.out.println("========================================");
for(int i=0;i<6;i++)
{
int n=i+1;
NoSingleton noSingletion=new NoSingleton();
System.out.println("第 "+n+" 次"+"得到的对象值为 "+noSingletion);
}
}
}