Java是一種非常流行的編程語言,具有強大的面向對象編程能力。在Java編程中,常見的設計模式可以幫助程序員更合理地組織代碼,提高代碼的可讀性、可維護性和可擴展性。下面我們來介紹幾個常見的設計模式和其應用場景。
1. 工廠模式
public interface Factory{ public void produce(); } public class ProductFactoryA implements Factory { @Override public void produce() { //生產A產品 } } public class ProductFactoryB implements Factory { @Override public void produce() { //生產B產品 } } public class Main{ public static void main(String[] args){ Factory factoryA = new ProductFactoryA(); Factory factoryB = new ProductFactoryB(); factoryA.produce(); //生產A產品 factoryB.produce(); //生產B產品 } }
應用場景:當需要創建某種產品時,使用工廠模式可以避免在客戶端代碼中直接使用new關鍵字創建對象,從而使客戶端代碼更加簡潔、易于維護。
2. 單例模式
public class Singleton{ private static Singleton instance; private Singleton(){} public static Singleton getInstance(){ if(instance == null){ instance = new Singleton(); } return instance; } }
應用場景:在需要保證系統中某個對象只有一個實例時可以使用單例模式,例如全局配置文件或數據庫連接池等。
3. 適配器模式
public interface USB{ public void connect(); } public class Computer{ public void connectUSB(USB usb){ usb.connect(); } } public class Keyboard{ public void typing(){ //鍵盤輸入 } } public class KeyboardAdapter implements USB{ private Keyboard keyboard; public KeyboardAdapter(Keyboard keyboard){ this.keyboard = keyboard; } @Override public void connect() { keyboard.typing(); } } public class Main{ public static void main(String[] args){ Computer computer = new Computer(); Keyboard keyboard = new Keyboard(); USB usb = new KeyboardAdapter(keyboard); computer.connectUSB(usb); //鍵盤輸入 } }
應用場景:當需要使用一個已有的接口而又不能直接修改該接口時,可以使用適配器模式。例如上述例子中,鍵盤沒有實現USB接口但我們可以通過適配器將其轉化為符合USB接口的形式,以便在Computer中連接使用。
下一篇php 5.4