W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
單例模式是一種創(chuàng)建模式。
這種模式只涉及一個(gè)單獨(dú)的類,它負(fù)責(zé)創(chuàng)建自己的對(duì)象。
該類確保只創(chuàng)建單個(gè)對(duì)象。
這個(gè)類提供了一種訪問其唯一對(duì)象的方法。
例如,當(dāng)設(shè)計(jì)一個(gè)用戶界面時(shí),我們可能只有一個(gè)主應(yīng)用程序窗口。我們可以使用Singleton模式來確保只有一個(gè)MainApplicationWindow對(duì)象的實(shí)例。
下面的代碼將創(chuàng)建一個(gè)MainWindow類。
MainWindow類的構(gòu)造函數(shù)是私有的,并且有一個(gè)自身的靜態(tài)實(shí)例。
MainWindow類提供了一個(gè)靜態(tài)方法來獲取它的靜態(tài)實(shí)例到外部世界。
Main,我們的演示類將使用MainWindow類來獲取一個(gè)MainWindow對(duì)象。
class MainWindow { //create an object of MainWindow private static MainWindow instance = new MainWindow(); //make the constructor private so that this class cannot be //instantiated by other class private MainWindow(){} //Get the only object available public static MainWindow getInstance(){ return instance; } public void showMessage(){ System.out.println("Hello World!"); } } public class Main { public static void main(String[] args) { //Get the only object available MainWindow object = MainWindow.getInstance(); //show the message object.showMessage(); } }
上面的代碼生成以下結(jié)果。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: