我有一個類庫,有2個公共類,它們繼承自一個抽象類。在抽象類中,我有一個只能被繼承類訪問的受保護字段。該字段使用的類型是內部類的類型。使用內部類型作爲保護字段
比如我有:
internal class MyInternalClass
{
...
}
public abstract class MyAbstractClass
{
protected MyInternalClass myField;
}
現在我明白了,如果從MyAbstract類派生類的一個擴展的組件之外,這將不是因爲工作,訪問MyField的將是非法的。
我的問題是我如何讓事情工作,同時保持MyInternalClass內部(它不應該在程序集外部訪問)並允許程序集內的類通過訪問myField來擴展MyAbstractClass?
後者('abstract')類必須是「公共」嗎? –
是的,它一定是。擴展它的兩個類是公共的。 – zaq
[如何在C#中保護屬性和內部?](http:// stackoverflow。com/questions/941104/how-to-make-a-property-protected-and-internal-in-c) – nawfal