Abstract类:单构造函数,访问修饰符?

kam*_*ahl 4 c# constructor class abstract

我有以下代码片段:

public abstract class Foo
{
    protected Foo()
}
Run Code Online (Sandbox Code Playgroud)

使用protected作为访问修饰符或公共使用之间的继承是否有任何区别?

我在这种情况下大多看到使用受保护.所以有区别,为什么人们使用公众保护?

Jon*_*eet 6

可能是一些微妙的情况下它会有所作为(这将是检测与反射),但本质上它们是相同的.这也可能是更清晰,使之protected,因为它实际上不能比派生类的构造函数调用的其他.