單例模式
單例模式(Singleton Pattern)是 Java 中最簡單的設計模式之一。這種類型的設計模式屬於創建型模式,它提供了一種創建對象的最佳方式。
這種模式涉及到一個單一的類,該類負責創建自己的對象,同時確保只有單個對象被創建。這個類提供了一種訪問其唯一的對象的方式,可以直接訪問,不需要實例化該類的對象。
其實單例模式的原理就是在類中創建了一個靜態實例,外部只能用一個公有的方法去獲取它
達到效果:保證一個類僅有一個實例,並提供一個外部訪問點。
應用實例:
- 1、一個班級只有一個班主任。
- 2、Windows 是多進程多線程的,在操作一個文件的時候,就不可避免地出現多個進程或線程同時操作一個文件的現象,所以所有文件的處理必須通過唯一的實例來進行。
- 3、一些設備管理器常常設計爲單例模式,比如一個電腦有兩臺打印機,在輸出的時候就要處理不能兩臺打印機打印同一個文件。
看個簡單Demo:
/**
*
* @ClassName: SingletonPattern
* @Description: 單例模式Demo
* @author 菱形繼承
* @date 2020-04-02 05:08:26
*/
public class SingletonPattern {
public static SingletonPattern instance=new SingletonPattern();
private SingletonPattern() {}
public static SingletonPattern getinstance() {
return instance;
}
public void show() {
System.out.println("這是單例模式的Demo!");
}
}
/**
* @Title: ShowSingletonPattern.java
* @Description: TODO
* @author 菱形繼承
* @date 2020-04-02 05:13:32
*/
/**
* @ClassName: ShowSingletonPattern
* @Description: TODO
* @author 菱形繼承
* @date 2020-04-02 05:13:32
*/
public class ShowSingletonPattern {
public static void main(String[] args) {
SingletonPattern test1=SingletonPattern.getinstance();
test1.show();
}
}