C# 将成员添加到继承 class 的嵌套 class
C# Add member to nested class of inherited class
是否可以做这样的事情?:
class A
{
public class B {
public static int x = 0;
}
}
class subA : A
{
public class B {
public static int y = 1;
}
}
// usage:
int n = subA.B.x + subA.B.y;
请注意,subA.B
应与 'A.B' 同名,并继承 A.B
的成员和一些额外的成员。
在 C# 中,嵌套 classes 与封闭 class 除了 accessibility/visiblity 没有任何关系(例如,您可以将嵌套 class 设为私有,因此它仅适用于封闭class)。
如果您需要问题中描述的行为,则需要明确地将 class B 标记为源自 A.B,如下所示:
class subA : A
{
public class B : A.B
{
public static int y = 1;
}
}
是否可以做这样的事情?:
class A
{
public class B {
public static int x = 0;
}
}
class subA : A
{
public class B {
public static int y = 1;
}
}
// usage:
int n = subA.B.x + subA.B.y;
请注意,subA.B
应与 'A.B' 同名,并继承 A.B
的成员和一些额外的成员。
在 C# 中,嵌套 classes 与封闭 class 除了 accessibility/visiblity 没有任何关系(例如,您可以将嵌套 class 设为私有,因此它仅适用于封闭class)。 如果您需要问题中描述的行为,则需要明确地将 class B 标记为源自 A.B,如下所示:
class subA : A
{
public class B : A.B
{
public static int y = 1;
}
}