Java設計模式是指在軟件開發(fā)中常用的一些設計思想和解決方案,它們已經(jīng)被廣泛接受并被證明是可行的。使用設計模式可以使得代碼更加清晰、靈活、可維護,并且可以增強軟件系統(tǒng)的可擴展性和可復用性。
// 例子:單例模式 public class Singleton { private static Singleton instance = null; private Singleton() { //私有構(gòu)造器 } public static Singleton getInstance() { if (instance == null) { synchronized(Singleton.class) { if (instance == null) { instance = new Singleton(); } } } return instance; } }
場景一:工廠模式。工廠模式是一種常用的創(chuàng)建型設計模式,它的主要目的是提供一個創(chuàng)建對象的接口,讓子類決定實現(xiàn)哪個類。
// 例子:簡單工廠模式 public class SimpleFactory { public Product createProduct(String type) { if (type.equals("A")) { return new ProductA(); } else if (type.equals("B")) { return new ProductB(); } else { return null; } } }
場景二:觀察者模式。觀察者模式是一種行為型設計模式,它主要用于在對象之間定義一對多的依賴關系,以便當一個對象的狀態(tài)發(fā)生改變時,所有依賴于它的對象都會得到通知并自動更新。
// 例子:觀察者模式 public interface Observer { void update(float price); } public interface Subject { void registerObserver(Observer observer); void removeObserver(Observer observer); void notifyObservers(); } public class StockData implements Subject { private Listobservers = new ArrayList (); private float price; public void registerObserver(Observer observer) { observers.add(observer); } public void removeObserver(Observer observer) { observers.remove(observer); } public void notifyObservers() { for (Observer observer : observers) { observer.update(price); } } public void setPrice(float price) { this.price = price; notifyObservers(); } }
以上是Java設計模式的一些基本知識,如果想要在軟件開發(fā)中更加成功,不妨在實際項目中嘗試一下這些模式的應用。