程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> JAVA綜合教程 >> java單例模式和雙例模式,java模式模式

java單例模式和雙例模式,java模式模式

編輯:JAVA綜合教程

java單例模式和雙例模式,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;
    }
}

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

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved