易百教程

227、什么是单例类?

单例类是不能多次实例化的类。要使类单例,要么将其构造函数设为私有,要么使用静态 getInstance 方法。参考以下示例:


class Singleton {

    private static Singleton single_instance = null;
    int i;

    private Singleton() {
        i = 90;
    }

    public static Singleton getInstance() {
        if (single_instance == null) {
            single_instance = new Singleton();
        }
        return single_instance;
    }
}

public class Main {

    public static void main(String args[]) {
        Singleton first = Singleton.getInstance();
        System.out.println("First instance integer value:" + first.i);
        first.i = first.i + 90;
        Singleton second = Singleton.getInstance();
        System.out.println("Second instance integer value:" + second.i);
    }
}