C#实训Day007:C#中如何定义类

2025-04-05 14:40:47

1、今天主要要说的就是类的访问修饰符,在定义类中主要有以下成员:·public--成员可以由任何代码访问。·private--成员只能由类中的代码访问(如果没有使用任何关键字,就默认使用这个关键字)。·internal--成员只能由定义它的程序集(项目)内部的代码访问。·protected--成员只能由类或派生类中的代码访问。后面两个关键字也可以合并使用,所以还有个成员是:protected internal,但是他们只能有通过派生类的代码来访问。

2、这里老师给我们举了一个很形象的例子来帮助我们理解相应的成员关系,假设现在有个家庭,其中有父亲,母亲,儿子,私生子四个成员,当使用public定义一个类时,那说明这件事情是公开的,四位成员和外人都知晓,当使用private定义一个类时,只有其本人知晓,其他人都不知情,当使用protected定义一个类时,父亲,儿子,私生子,都知道,只有母亲不晓得(晓得还得了),当使用internal定义一个类时,只有家人知道,外人无法知晓。

C#实训Day007:C#中如何定义类

3、定义类:类是以关键字class开始,后跟类的名称,类的主体,包含在一对花括号内。类定义中可以使用的访问修饰符组合none or internal 类只能在当前工程中访问public 类可以在任何地方访问abstract or internal abstract 类只能在当前工程中访问,不能实例化,只能继承public abstract 类可以在任何地方访问,不能实例化,只能继承sealed or internal sealed 类只能在当前工程中访问,不能派生,只能实例化public sealed 类可以在任何地方访问,不能派生,只能实例化下面是类定义的一般形式:<访问标识符 > classTest_Name{} 属性说明:类访问标识符指定了对类及其成员的访问规则,如果没有指定,则使用默认的访问标识符,方法使用标准函数格式。

C#实训Day007:C#中如何定义类

4、C#中方法、类等的默认访问修饰符接口成员访问修饰符默认为public,且不能显示使用访问修饰符。构造函数默认为public访问修饰符。析构函数不能显示使用访问修饰符且默认为private访问修饰符。类的成员默认访问修饰符为private;枚举类型成员默认为public访问修饰符,且不能显示使用修饰符。结构成员默认为private修饰符。嵌套类型的默认访问修饰符为private。 和类,结构的成员默认访问类型一致

5、定义字段字段用标准的变量声明格式和修饰符来定义(可以进行初始化)publice class Test_Name{public int Value;}

C#实训Day007:C#中如何定义类

6、字段也可以使用关键字 readonly,表示这个字段只能在执行构造函数的过程中赋值,或由初始化赋值语句赋值。class Class_Name{  public readonly int Value=1;}字段也可以使用static关键字声明为静态,例如:class Class_Name{  public static int Value;}

C#实训Day007:C#中如何定义类

7、另外可以使用关键字const来创建一个常量。按曳骣苷镐照定义,const成员也是静态的,所以,不需要用static修饰符。定义属性属性定义方式与字段类似,属性顾明思议就是成员的属性值,舛匀砖察属性涉及的内容比字段多,属性拥有两个类似于函数的块,一个块用于获取属性的值(get),另一个用于设置属性的值(set)。通过get和set关键字来定义用于控制属性的访问级别,属性的基本结构包括标准的可访问修饰符(public、private等),后跟类名、属性名和get块(或set块,或者get块和set块,其中包含属性处理代码)。<访问标识符 > classclass_name{//私有成员privatestringid;//公有属性(只读)publicstringID{ get{returnid}}//公有属性(只写)publicstringID{set{id=value;}}}

C#实训Day007:C#中如何定义类

8、这里需要注意的是关键字static也可以使用来声明字段、方法和属性,但是它们是类的静态成员,而不是对象实例的成员。

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢