在静态类中声明非静态内部类的基本原理是什么?
public static class A
{
public class B
{
public B() { }
}
}
与非静态成员和函数无法在静态类中声明的事实相比。
答案 0 :(得分:3)
B
的多个实例怎么样?这样,嵌套在静态类中的非静态类与常规非静态类没有区别。
public static class A
{
public class B
{
public B() { }
}
private static B b1 = new B();
private static B b2 = new B();
}
请参阅静态System.Linq.Enumerable
类的实际示例,其中包含一些特定实现作为嵌套非静态类。