前言:
在编写面向对象语言时我们时长离不开相关类型和成员的相关访问性,而访问性的关键则是取决于访问修饰符的声明,其作用是用于指定类型或成员的可访问性。
访问修饰符的六种可访问性级别:
- public:共有的,访问不受限制;
- private:私有的,只能在当前类中访问;
- internal:内部的,只能在当前程序集中访问;
- protected:受保护的,只能在当前类或其派生类中访问;
- protected internal:受保护的内部成员,当前程序集或派生自包含类的类型可访问;
- private protected:私有受保护的成员,当前程序集中的包含类或从包含类派生的类型可访问;
其他类型的成员和嵌套类型的可访问性:
成员 | 默认成员可访问性 | 允许的成员的声明的可访问性 |
---|---|---|
enum(枚举) | public | 无 |
class(类) | private | publicprotectedinternalprivateprotected internalprivate protected |
interface(接口) | public | 无 |
struct(结构) | private | publicinternalprivate |