factory

    0熱度

    2回答

    我應該這樣做在靜態構造函數?否則,如果Create方法是公共靜態的,則每個人都可以調用它並重新創建控件列表。那不是想要的!

    1熱度

    1回答

    我想建立一個API,客戶端可以註冊一個監聽器,它接收事件。在事件上調用的偵聽器方法需要一個參數。 API應該讓客戶決定這個參數應該是具體類的實例還是接口的實例(以避免客戶端監聽器實現中不必要的轉換)。要做到這一點,我玩過泛型。它工作正常,除了一個案例! 客戶端實現一個接口(請參閱MyListener1Impl.java和MyListener2Impl.java中的示例),並且可以使用泛型來決定事件

    0熱度

    3回答

    我有一個基類和從該基類派生的幾個子類。我也有基類中的靜態函數,它需要一些參數,並基於輸入參數(我的工廠方法)實例化並返回一個適當的子類。 現在,我的問題是:我只想允許實例化子類從工廠方法。但是,如果我設置要保護的子類的構造函數,基類將無法看到它們。是否有我缺少的訪問修飾符允許基類調用子類的構造函數,但不允許任何其他類調用它們? 內部看起來不會有效......我想限制只有基類的子類構造函數的訪問權限

    2熱度

    1回答

    基本上,有沒有簡單的方法來處置由ExportFactory<T>創建的進口?我問的原因是因爲出口通常包含對某些事物的引用,例如EventAggregator。我不想遇到這樣的問題:我創建了數百個這樣的問題,並且在他們沒有必要時讓他們鋪設。 我注意到,當我創建對象時,我得到一個ExportLifetimeContext<T>,它帶有Dispose。但是,我不想將ExportLifetimeConte

    1熱度

    2回答

    我在編寫C++框架時遇到了問題,即用戶的開銷應該比使用它少。用戶可以通過創建一個共享庫來發布他們的工作,這些共享庫包含一個類,該類由框架的BaseClass派生,並實現一個extern「C」createInstance()方法,以便將實例的派生類返回。因此,框架可以通過使用dlsym()通過共享庫調用createInstance-Method來訪問用戶類。 class BaseClass{} c

    0熱度

    1回答

    我想創建一個將充當提供者的bean。 我會給它它應該返回的類以及我在返回它之前應該設置的屬性列表。 所以基本上它看起來像這樣: <bean id="somethingFactory" class="foo.bar.SomethingFactory"> <property name="implClass" value="foo.bar.SomehtingImpl" /> <pro

    4熱度

    3回答

    我需要一個對象B,但我得到一個對象的時候執行「B.GetByID()」 public class A { public A() { } public static A GetSelf() { return new A(); } public static A GetByID() { re

    1熱度

    4回答

    我需要重構幾個長方法。 在我們的應用程序中,我們製作了一系列文檔,所有這些文檔都具有從應用程序中的值中獲取的不同值。所有這些代碼現在都在助手類中,但是,我想使用工廠類來生成文檔。如果A然後致電factory.getDocument("A"),如果B然後調用factory.getDocument("B")工廠應該表現如此。 我的問題是,爲了構建文檔,我需要從我的數據庫中獲取值,並且我在某處(或者有人

    0熱度

    1回答

    我想在VB.NET中爲泛型類創建工廠,並且遇到問題。 我有什麼是兩個接口: IPersistentObject和IPManagerBase(OF T作爲IPersistentObject) 的邏輯是,爲每種類型的peristent對象的我有一個相應的管理器類處理查詢邏輯。 現在我有一個基類是這樣的: public class PManagerBase(Of T as IPersistentObje

    4熱度

    7回答

    想象一下,您有一個派生類,其中基類是不能修改的。基類有許多狀態(許多非常量私有成員)和許多構造函數,它們具有不同數量的參數來初始化狀態的某個子集(當然,子集的大小因構造函數而異)。 現在我的派生類是一個非常輕量級的基類包裝。假設它沒有添加自己的狀態,只是稍微修改了幾個方法的行爲(可能會在調用super.originalMethod()時做一些額外的日誌記錄)。 我遇到的問題是我想獲取基類的一個對象