單例模式用于保證在程序的運(yùn)行期間某個(gè)類有且僅有一個(gè)實(shí)例。其優(yōu)勢(shì)在于盡可能解決系統(tǒng)資源。通過修改構(gòu)造方法的訪問權(quán)限就可以實(shí)現(xiàn)單例模式。
代碼如下:
public class Emperor {
private static Emperor emperor = null;// 聲明一個(gè)Emperor類的引用
private Emperor() {// 將構(gòu)造方法私有
}
public static Emperor getInstance() {// 實(shí)例化引用
if (emperor == null) {
emperor = new Emperor();
}
return emperor;
}
public void getName() {// 使用普通方法輸出皇帝的名字
System.out.println("我是皇帝:明日科技");
}
}
public class Test {
public static void main(String[] args) {
System.out.println("創(chuàng)建皇帝1對(duì)象:");
Emperor emperor1 = Emperor.getInstance();// 創(chuàng)建皇帝對(duì)象
emperor1.getName();// 輸出皇帝的名字
System.out.println("創(chuàng)建皇帝2對(duì)象:");
Emperor emperor2 = Emperor.getInstance();// 創(chuàng)建皇帝對(duì)象
emperor2.getName();// 輸出皇帝的名字
System.out.println("創(chuàng)建皇帝3對(duì)象:");
Emperor emperor3 = Emperor.getInstance();// 創(chuàng)建皇帝對(duì)象
emperor3.getName();// 輸出皇帝的名字
}
}
效果如圖: