.C#访问修饰符
作者:欧日鑫
撰写时间:2020年8月17日
在C#语言中类定义后就要确定类中包含的内容,类中包含的内容被称为类中的成员,类中的成员包括字段、属性、方法,每个类成员在定义时需要指定访问修饰符,类的访问修饰符只要有两个,即internal和public,如果省略了访问修饰符,即为internal,类中成员的访问修饰符有4个,具体用法如下。
1) public:成员可以被任何代码访问。
2) private:成员仅能被同一个类中的代码访问,如果在类成员前未使用任何访问修饰符,则默认为private。
3) internal:成员仅能被同一个项目中的代码访问。
4) protected:成员只能由类或派生类中的代码访问,派生类是在继承中涉及到,将在后面详细介绍
字段的定义与前面介绍的变量和常量的定义类似,只是在变量或常量前面可以加上访问修饰符,在修饰符字段时通常用两个修饰符,即readonly (只读)和static (静态的),使用readonly修饰符段意味着只能读取该字段的值不能给字段赋值,使用static修饰符的字段时静态字段,可以直接通过类名访问该字段,需要注意的是常量不能使用static修饰符修饰,需要注意的是常量不能使用static修饰符修饰,定义字段的语法形式如下。
访问修饰符 修饰符 数据类型 字段名;
在这里访问修饰符和修饰符都是可以省略的,并且访问修饰符和修饰符的位置也可以互换,但从编码习惯上来说通常将访问修饰符放到修饰符的前面。此外,在类中定义字段时字段名是唯一的。
【实例】在 Test 类中分别定义使用不同修饰符的字段。
根据题目要求,代码如下。
1. namespace code_1
2. {
3. class Test
4. {
5. private int id; //定义私有的整型字段 id
6. public readonly string name; //定义公有的只读字符串类型字段 name
7. internal static int age; //定义内部的静态的整型字段 age
8. private const string major = "计算机"; //定义私有的字符串类型常量 major
9. }
10. }
通过上面的语句演示了不同修饰符字段的定义,重点是记住这些修饰符的使用。
字段在类中定义完成后,在类加载时,会自动为字段赋值,不同数据类型的字段默认值不同, 如下表所示。
数据类型 默认值
整数类型 0
浮点型 0
字符串类型 空值
字符型 a
布尔型 False
其他引用类型 空值