2012-07-14 61 views
1

可能重複:
Interface defining a constructor signature?類具有參數化的構造函數總是

我可以在接口中聲明的方法和屬性,並處實現它來實現這些方法和屬性的類。 類似地,是否可以強加一個規則,以便我的所有實現某個接口的類都應該始終具有參數化構造函數?

我不確定這是否可能。只是一個想法。

感謝

+3

不行,不能做。 http://stackoverflow.com/questions/619856/interface-defining-a-constructor-signature – 2012-07-14 18:34:59

回答

4

同樣是有可能施加這樣,我所有的類,其實現某個接口應該始終有一個參數化的構造函數的規則?

不,不通過接口聲明。

你可以創建一個抽象類,而不是和它可以有一個參數化的構造 - 所有執行類型將繼承構造函數,將使用base關鍵字可以鏈到它。請注意,這不會阻止您繼承實現無參數構造函數的類型。

0

一個類有構造函數和接口不能。所以你不能在實現某些接口,力量類有一個參數化的構造器

但你可以有一個類有多個構造和它的孩子們可以自己想用

1

沒有哪個構造一個選擇,但如果你的目標是規範一個接口的實例是如何構造的,定義另一個接口是第一個實例的工廠。在工廠界面中,您可以施加所需的施工參數。

interface IFoo 
{ 
    ... 
} 

interface IFooFactory 
{ 
    IFoo CreateFoo(string param1, string param2) 
} 
+0

謝謝..這看起來像我想要的。你能詳細解釋一下嗎? Foo班怎麼樣? – Nishant 2012-07-14 19:41:02

相關問題