~~~~~~~~~~~~~~~~~~ Database A __________________ (圖 2)
好了看到這里, 假如您對設計模式有了解的話, 從上面所寫的偽名字中, 可以看到一些熟悉的東西. 請讓我做一些解釋. 上面的圖表示的是類的繼續關系, A 代表上面所提到的四種對象, Interface A 表示名為 A 的一個接口, 相信大家對接口都不生疏, 接口在 java 中有著重要的作用. Proxy A 表示一個名為 ProxyA 的類,實現 A 接口. Database A 表示名為 DbA 的一個類, 實現 A 接口. 但設計模式并沒有從中體現出來,設計模式所要表現的是怎么樣更好地組織對象之間的邏輯關系,怎么樣才能更好地擴充現有的東西而不需要作很大的改動, 而不僅僅是類的繼續.
if (classNameProp != null) { className = classNameProp; } try { //Load the class and create an instance. Class c = Class.forName(className); factory = (ForumFactory)c.newInstance(); } catch (Exception e) { System.err.println("Failed to load ForumFactory class " + className + ". Jive cannot function normally."); e.printStackTrace(); return null; }