只有两个实例的实现:
public class Test {
public static void main(String[] args) {
Singleton s1 = Singleton.INSTANCEA;
s1.setAge(20);
System.out.println(s1.getAge());
Singleton s2 = Singleton.INSTANCEA;
System.out.println(s2.getAge());
System.out.println(s1 == s2);
Singleton s3 = Singleton.INSTANCEB;
s3.setAge(22);
System.out.println(s3.getAge());
Singleton s4 = Singleton.INSTANCEB;
System.out.println(s4.getAge());
System.out.println(s3 == s4);
}
}
enum Singleton
{
INSTANCEA,INSTANCEB;
private int age;
public void setAge(int age) {
this.age = age;
}
public int getAge() {
return age;
}
}
结果:
20
23
true
22
22
true