java中只能有一个实例的类的创建

Java中,如果我们创建一个类,想让这个类只有一个对象,那么我们可以

    1:把该类的构造方法设计为private

    2:在该类中定义一个static方法,在该方法中创建对象

package test;


/*
 * 有时候我们希望一个类在任何时候都只有一个实例,这时候可以把该类设计为单例模式。
 * 要将一个类设计为单例模式,需要:
 *         1:把该类的构造方法的访问修饰符生命为private
 *         2:然后在该类中定义一个static方法,在该方法中创建类的对象
 *
 * */
public class Singleton {
    private static final Singleton INSTANCE = new Singleton(); //私有成员
    private int a = 0;//私有成员
    
    
    private Singleton(){}//构造方法
    public static synchronized Singleton getInstance(){//类的方法
        return INSTANCE;
    }
    public void methodA(){ //成员方法
        a++;
        System.out.println("a = "+a);
    }
    public static void main(String[] args){ //主方法
        Singleton sg1 = Singleton.getInstance();
        Singleton sg2 = Singleton.getInstance();
        sg1.methodA();
        sg2.methodA();
        System.out.println(sg1 == sg2);
    }

}

 

posted on 2015-11-17 15:50  张明明_1  阅读(1162)  评论(0编辑  收藏  举报

导航