单例代表只有一个对象,每创建一个对象都要通过new 操作来执行构造函数对所需要创建的对象进行初始化,
而你类里面的构造函数是默认修饰 非 private私有修饰,所以在SingleDemo 可以通过new Single();操作new出N个对象
把构造函数私有化,并返回对象的get方法
根据毕老师所说的俩种单例模式 我说说其中使用一点的饿汉式:- class Single{
- private int num;
- private static Single s = new Single();
- public void setNum(int num){
- this.num = num;
- }
- public int getNum(){
- return num;
- }
-
- private Single() {}
-
- public static Single getSingle(){
- return s;
- }
- }
- class SingleDemo{
- public static void main(String[] args){
- Single s1 =Single.getSingle();
- Single s2 = Single.getSingle();
- s1.setNum(30);
- System.out.println(s2.getNum());
- }
- }
复制代码 |