class Singleton {
private static Singleton obj = new Singleton();
public static int counter1;
public static int counter2 = 0;
private Singleton() {
counter1++;
counter2++;
System.out.println("constructor counter2's value :"+counter2);
}
public static Singleton getInstance() {
System.out.println("getInstance counter2's value :"+counter2);
return obj;
}
}
public class MyMain {
@SuppressWarnings("static-access")
public static void main(String[] args) {
Singleton obj = Singleton.getInstance();
System.out.println("obj.counter1=" + obj.counter1);
System.out.println("obj.counter2=" + obj.counter2);
Singleton obj1 = Singleton.getInstance();
System.out.println("obj1.counter1=" + obj1.counter1);
System.out.println("obj1.counter2=" + obj1.counter2);
}
}
输出结果是:
obj.counter1=1
obj.counter2=0
obj1.counter1=1
obj1.counter2=0
Trackback: http://tb.blog.youkuaiyun.com/TrackBack.aspx?PostId=1392662
本文展示了一个使用Java实现的单例模式示例。通过一个名为Singleton的类来演示如何确保整个应用程序中只有一个实例存在,并提供一个全局访问点。此外,还展示了如何在主类MyMain中获取Singleton实例并打印其静态成员变量counter1和counter2的值。
1405

被折叠的 条评论
为什么被折叠?



