c# 类成员的定义 定义方法、字段和属性
2010-05-09 00:58
295 查看
c# 类成员的定义 定义方法、字段和属性
c#类的成员包括字段、属性和方法。所有成员都有自己的访问级别,用下面的关键字之一来定义: public----成员可以有任何代码访问; private----成员只能有类中的代码访问(如果没有使用任何关键字,默认使用这个关键字); internal----成员有定义他的项目(程序集)内部的代码访问; protected----成员只能由类或派生类的代码访问。 后两个关键字可以合并 protected internal----他们只能由项目(程序集)中的派生代码来访问。 1.定义字段: 字段用标准的变量声明格式和前面介绍的修饰符来声明(也可以初始化),例如: class myClass { public int MyInt; } 公共字段推荐用PascalCasing的形式来命名,私有字段没有推荐的命名形式,一般使用camelCasing的形式来命名。 字段可以使用关键字readonly,表示这个字段只能在执行构造函数的过程中赋值,或由初始化语句赋值,例如: class myClass { public readonly int MyInt=17; } 字段也可以使用static声明为静态的: class myClass { public static int MyInt; } 2.定义方法: 方法使用标准的函数格式,以及可访问性,和可选的static修饰符来声明,例如: class myClass { public string MyString() { return “这是一个方法”; } } 解析: class myClass { //开始声明方法代码 public string MyString() { return “这是一个方法”; } //结束声明方法代码 } 公共方法也用PascalCasing的形式来命名。 注意:如果声明了static关键字,这个方法就只能通过类来访问,而不能通过对象实例还访问。 也可以在方法定义中使用下面的关键字: virtual----方法可以重写; abstract----方法必须在非抽象的派生类中重写(只用于抽象类); override----方法重写了一个基类方法(要重写方法,必须用这个关键字); extern----方法定义在其他地方; 3.定义属性 属性定义与地段类似,但内容比较多。属性有两个类似于函数的块,一个用于获取属性的值,一个用于设置属性的值,例子: class myClass { private int myInt;//字段 //(下面为属性) public int MyInt { get { return myInt; } set { myInt=value; } } } get 块一般有一个属性类型的返回值,简单的属性一般与一个私有字段相关联,用来控制对这个字段的访问,这是get块可以直接返回该字段的值; 上面的myInt字段外部不能访问,只能通过属性来访问该字段。 set函数以类似的方式把一个值赋给字段,这里可以使用关键字value引用用户提供的属性值;value值等于类型和属性相同的一个值,如果属性的类型和字段的类型相同,就不用进行类型转换。 属性可以使用vartual、override和abstract关键字,但是不能将这几个关键字用于字段。 |
相关文章推荐
- c# 类成员的定义 定义方法、字段和属性
- c# 类成员的定义 定义方法、字段和属性【转】
- c# 类成员的定义 定义方法、字段和属性
- C#类的成员(字段、属性、方法)
- 【c#】定义类成员(字段、方法、属性)
- c# 静态成员(静态字段,属性,方法,构造器,类)
- C#中属性实为方法,如果类中只是定义了属性,则编译器会自动生成相应的字段
- C# 字段、属性、成员变量
- 如何在C#中使用get及set方法定义属性
- C#中类的字段,方法和属性的区别
- C#属性、字段和成员变量的关系区别
- C#中自定义控件隐藏基类成员(属性、方法和事件)的方法
- C#封装:关于字段属性的get和set方法的小总结
- C#中对类的字段、属性、方法的简单示例
- (原创)c#学习笔记10--定义类成员05--部分方法定义
- C#--第九周实验--任务3--定义一个静态成员方法,使用Random实现从一组数中随机抽取n个不重复的数。
- c# 属性如何自定义,以及为什么要定义属性而不是直接访问公共字段
- C#中的修饰符被用来定义类型和成员方法
- C#属性、字段和成员变量的关系区别
- C#属性、字段和成员变量的关系区别