亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

Singleton 模式在 Java 中的應用

2019-11-18 14:17:49
字體:
來源:轉載
供稿:網友

  Singleton 模式在 java 中的應用

程序中經常有這樣的要求,整個程序運行時只有一個實例被使用。
比如:數據庫連接池,系統參數配置,Java API 中的 Runtime, Calendar ...
如何實現這種需求成為一個值得討論的問題。

以往的做法,是在程序的某個類里面(比如是 GlobalObject )建立一個這個此種類的實例,然后規定
所有需要用到此類的,都從 GlobalObject 那里獲得,看下面的例子:

public class ConnectionPoolManager {
public ConnectionPoolManager {
// do some initialize work
}
public Connection getConnection(){
....
}
}

public class GlobalObject {
PRivate ConnectionPoolManager connectionPoolManager;
public GlobalObject () {
connectionPoolManager = new ConnectionPoolManager();
...
}
public void getConnectionPoolManager() {
return connectionPoolManager;
}
}

public class QueryFunctions {
public static Collection findStudentByName(String name){
ConnectionPoolManager = globalObject.getConnectionPoolManager();
Connection connection = connectionPoolManager.getConnection();
// query database
}
}

但這樣做有如下缺點:
其他人可能 調用 ConnectionPoolManager 的構造函數自己建立一個 數據庫連接池,導致
程序中存在多個 ConnectionPoolManager,人為的規定往往得不到好的實施。
GlobalObject 其實就是一個 C 語言中的全局變量,與面向對象的方法相沖突。


因此,可以使用 設計模式 中的 Singleton (單件)模式來完成以上的需求:
Java API 中的 Runtime 等等用的就是這種方法。
代碼如下:

public class ConnectionPoolManager {
private static instance = null;
private ConnectionPoolManager() {
// do some initialize work
}
public static void getInstance() {
if (instance == null){
instance = new ConnectionPoolManager();
}
return instance;
}
public Connection getConnection(){
}
}

ConnectionPoolManager 的使用

public class QueryFunctions {
public static Collection findStudentByName(String name){
ConnectPoolManager connectionPoolManager = ConnectionPoolManager.getInstance();
Connection conn = connectionPoolManager.getConnection();
// query database
}
}

1.instance 是私有的,開始時賦值為 null,外部只有通過 getInstance 方法才能獲得他。
2.構造方法是私有的,這點很重要,保證只有這個類自己才能夠調用,其他的類無法調用此構造函數。
3.getInstance 方法中:
if 語句,保證只有一個 instance 存在
唯一的一個 ConnectionPoolManager 在第一次調用的時候被建立。

下面是另一個例子: java.lang.Runtime
我剛看了 Runtime 的實現如下:

public class Runtime {
private static Runtime currentRuntime = new Runtime();
public static Runtime getRuntime() {
return currentRuntime;
}
/** Don´t let anyone else instantiate this class */


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产成人精品国内自产拍免费看| 国产欧美日韩视频| 成人免费网站在线| 国产日本欧美一区| 欧美激情18p| 欧美日韩成人在线播放| 91美女片黄在线观| 久久久精品久久久| 美日韩在线视频| 91网站免费看| 国产日韩欧美在线看| 日本欧美中文字幕| 操日韩av在线电影| 亚洲精品久久久一区二区三区| 超碰97人人做人人爱少妇| 中文字幕亚洲综合久久筱田步美| 久久999免费视频| 日本三级韩国三级久久| 亚洲欧美变态国产另类| 国产久一一精品| 久久欧美在线电影| 亚洲美女激情视频| 国产精品激情av电影在线观看| 亚洲激情中文字幕| 国产日韩av高清| 欧美乱大交xxxxx另类电影| 91亚洲永久免费精品| 久久久久久伊人| 久久在线精品视频| 久久久久久免费精品| 欧美电影免费在线观看| 国产成人高潮免费观看精品| 亚洲精品电影久久久| 亚洲欧美三级伦理| 日韩美女毛茸茸| 91视频国产一区| 久久久国产精品视频| 一区二区三区亚洲| 国产精品电影网| 亚洲xxx视频| 欧美一区二区三区四区在线| 亚洲欧美国产制服动漫| 啊v视频在线一区二区三区| 热久久美女精品天天吊色| 亚洲精品午夜精品| 国产精品久久久久久久av电影| 51ⅴ精品国产91久久久久久| 成人激情在线播放| 91牛牛免费视频| 亚洲国产免费av| 日韩中文av在线| 992tv成人免费视频| 中文字幕九色91在线| 亚洲免费一级电影| 91夜夜未满十八勿入爽爽影院| 久久综合久久八八| 国产精品久久久亚洲| 亚洲欧美国产制服动漫| 欧美一区二区三区四区在线| 宅男66日本亚洲欧美视频| 久久91亚洲精品中文字幕奶水| 久久精品国产欧美亚洲人人爽| 青草青草久热精品视频在线观看| 亚洲最新在线视频| 亚洲日韩中文字幕| 日韩亚洲综合在线| 日韩美女av在线免费观看| 亚洲精品国产品国语在线| 中日韩美女免费视频网站在线观看| 久久久久久久久综合| 日韩资源在线观看| 亚洲成人中文字幕| 亚洲综合日韩中文字幕v在线| 成人黄色免费网站在线观看| 日韩免费高清在线观看| 97在线免费观看视频| 成人在线观看视频网站| 色妞色视频一区二区三区四区| 成人av资源在线播放| 欧美国产第二页| 国产精品久久久久久久久久| 色偷偷av一区二区三区| 国产精品亚洲аv天堂网| 日韩高清免费观看| 亚洲欧美在线一区| 久热国产精品视频| 欧美性xxxxxxxxx| 成人网欧美在线视频| 精品国产精品自拍| 亚洲男人天堂2023| 日韩视频中文字幕| 日韩综合中文字幕| 亚洲最大福利网| 亚洲欧美日韩中文在线| 欧美一级视频在线观看| 欧美激情亚洲国产| 麻豆成人在线看| 亚洲欧美一区二区三区情侣bbw| 日本久久久久久久久久久| 91精品久久久久久久久久另类| 精品久久久久久久久久ntr影视| 国产精品亚洲综合天堂夜夜| 这里只有视频精品| 1769国产精品| 久久天天躁夜夜躁狠狠躁2022| 午夜精品久久久久久久白皮肤| 欧美成人午夜激情| 欧美日韩国产成人高清视频| 欧美日韩福利在线观看| 久久精品国产2020观看福利| 91香蕉亚洲精品| 国产精品视频久| 欧美成人午夜剧场免费观看| 91国产高清在线| 日韩美女av在线免费观看| 97视频在线观看免费高清完整版在线观看| 亚洲精品免费网站| 久久全球大尺度高清视频| 精品久久久久久久久久| 国产精品自产拍高潮在线观看| 日韩成人中文字幕在线观看| 久久久成人精品视频| 色婷婷成人综合| 亚洲日本成人女熟在线观看| 日韩中文字幕久久| 亚洲午夜av电影| 亚洲理论在线a中文字幕| 亚洲视频专区在线| 91九色国产视频| 一区二区三区回区在观看免费视频| 日韩精品免费综合视频在线播放| 亚洲国产另类久久精品| 亚洲v日韩v综合v精品v| 国产成人精品一区| 91sa在线看| 亚洲精品视频久久| 国产精品狠色婷| 亚洲日韩中文字幕| 一区二区三区国产视频| 奇米成人av国产一区二区三区| 国产综合久久久久| 91在线无精精品一区二区| 国产精品久久久久久久久免费看| 日本在线精品视频| 久久影院在线观看| 狠狠做深爱婷婷久久综合一区| 国产精品久久一区| 91美女片黄在线观| 日韩av男人的天堂| 麻豆精品精华液| 欧美高清视频一区二区| 国产一区二区三区直播精品电影| 丝袜一区二区三区| 国产亚洲精品高潮| 国产欧美一区二区白浆黑人| 欧美国产视频一区二区| 欧美激情小视频| 亚洲曰本av电影| xxx欧美精品| 欧美肥老妇视频| yellow中文字幕久久| 欧美大尺度在线观看| 久久在线精品视频| 日本国产精品视频|