Java設(shè)計(jì)模式是軟件工程中使用最廣泛的一種編程模式。設(shè)計(jì)模式是一系列經(jīng)過實(shí)踐驗(yàn)證的被認(rèn)可的最佳實(shí)踐。Java設(shè)計(jì)模式提供了一種通用的解決方案,可以在軟件開發(fā)過程中解決常見的問題,并提高代碼的可讀性、可重用性和可維護(hù)性。
public class Singleton { private static Singleton instance = null; private Singleton() { } public static Singleton getInstance() { if (instance == null) { instance = new Singleton(); } return instance; } }
單例模式是一種創(chuàng)建型設(shè)計(jì)模式。該模式可以確保在整個(gè)應(yīng)用程序中只有一個(gè)實(shí)例可用,而且該實(shí)例在使用過程中不會(huì)被改變。
public interface Shape { void draw(); } public class Circle implements Shape { @Override public void draw() { System.out.println("畫一個(gè)圓形"); } } public class Rectangle implements Shape { @Override public void draw() { System.out.println("畫一個(gè)矩形"); } } public class ShapeFactory { public Shape getShape(String shapeType) { if (shapeType == null) { return null; } if (shapeType.equalsIgnoreCase("CIRCLE")) { return new Circle(); } else if (shapeType.equalsIgnoreCase("RECTANGLE")) { return new Rectangle(); } else { return null; } } }
工廠模式是一種創(chuàng)建型設(shè)計(jì)模式。該模式提供一個(gè)共同的接口來創(chuàng)建相似的對(duì)象,并且在不知道具體實(shí)現(xiàn)細(xì)節(jié)的情況下返回一個(gè)適當(dāng)類型的對(duì)象實(shí)例。