java單例模式和雙例模式


今天朋友找我給做道題,雙例模式,我是沒聽說過,都說是單例模式和多例模式,

也不知道雙例模式什么時候用,就簡單寫了一個案例,不知道對不對,個人感覺蠻對的,雙例就是單例+單例,廢話不說了!!!!

/*
*單例模式
調用方法
Singleton singleton = Singleton.getSingleton();
singleton.getValue("我是單例模式");
*/
 
public class Singleton {
    private static Singleton  singleton = null;
    public static Singleton getSingleton(){
        if(singleton==null){
            return singleton = new Singleton();
        }else{
            return singleton;
        }
    }
    
    public String getValue(String name){
        return name;
    }
}

/*
*雙例模式,如果是三例模式就吧len參數改成3
調用方法
Doubleton doubleton = Doubleton.getDoubleton();
doubleton.getValue("我有兩個實例!");
*/
import java.util.ArrayList;
import java.util.List;
import java.util.Random;

public class Doubleton {

    private static List<Doubleton> list = new ArrayList<Doubleton>();
    private static int len = 2;
    static{
        for(int i=0;i<len;i++){
            list.add(new Doubleton());
        }
    }
    public static Doubleton getDoubleton (){
        Random random = new Random();
        int current = random.nextInt(len);
        return (Doubleton)list.get(current);
    }
    

    public String getValue(String name){
        return name;
    }
}

希望大牛們給指點指點對不對,在此感謝!!!!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM