//这是三个成员变量
private String name;
private int age;
private static Single s=new Single();
//这是一个不带参数的构造函数
private Single() {
}
private String name;
private int age;
private static Single s=new Single();
//这是一个不带参数的构造函数
private Single() {
}
//这是一个带两个参数的构造函数
private Single(String name, int age) {
private Single(String name, int age) {
this.name = name;
this.age = age;
}
this.age = age;
}
//获得刚才生成的对象s的实例
public static Single getInstance(){
return s;
}
}
二、懒汉式
对象是在方法被调用的时候才初始化的,也叫做对象的延时加载,称为:懒汉式。
记录一个原则:定义单例模式时,建议使用饿汉式。
懒汉式单例模式java代码如下:
class SingelDemo2{
private String name;
private int age;
private static SingelDemo2 s=null;
private SingelDemo2(){}
public static SingelDemo2 getInstance() {
if (s==null){
synchronized(SingelDemo2.class){
if(s==null)
s=new SingelDemo2();
}
}
return s;
}
}
public static Single getInstance(){
return s;
}
}
二、懒汉式
对象是在方法被调用的时候才初始化的,也叫做对象的延时加载,称为:懒汉式。
记录一个原则:定义单例模式时,建议使用饿汉式。
懒汉式单例模式java代码如下:
class SingelDemo2{
private String name;
private int age;
private static SingelDemo2 s=null;
private SingelDemo2(){}
public static SingelDemo2 getInstance() {
if (s==null){
synchronized(SingelDemo2.class){
if(s==null)
s=new SingelDemo2();
}
}
return s;
}
}