1、静态内部类实现单例
package com.caiya.test.singleton;
import org.apache.http.util.Asserts;
/**
* Created by caiya on 16/10/9.
*/
public class Singleton {
private String name;
public void setName(String name) {
this.name = name;
}
public String getName() {
return name;
}
private Singleton(){
System.out.println("init...");
}
private static class Holder{
private static Singleton instance = new Singleton();
}
public static Singleton getInstance(){
return Holder.instance;
}
public static void main(String[] args) {
Singleton instance1 = Singleton.getInstance();
instance1.setName("test");
Singleton instance2 = Singleton.getInstance();
Asserts.notNull(instance1, "instance1");
Asserts.notNull(instance2, "instance2");
Asserts.check(instance1 == instance2, "instance1 != instance2");
System.out.println(instance2.getName());
}
}
© 著作权归作者所有