原文链接:https://csharp.net-tutorials.com/classes/visibility/
可见性 Visibility
可见性 控制的是 访问权限的问题。最常见的就是private
和public
,这里只介绍几种
-
public
任何地方都能访问的。枚举Enum
和接口interface
都是public
-
protected
只能从本class 或者 继承自本class 的对象里访问 -
internal
同一个project
内的对象 才能访问 -
private
同类的才能访问,class
和struct
都是private
举个例子 Class1 和 Class2 ,Class1里的私有成员只有Class1才能访问,Class访问不了
如果我们在Class2里实例化一个Class1,我们也是用不了它的私有变量,因为你还是Class2
如果Class2 继承自 Class1,那在Class2里只能访问Class1的非私有变量,私有的还是访问不了,因为不是同Class(基类和派生类毕竟不是一个类)