深入.NET平台和C#编程
第二章
用对象思考:属性和方法
【类和对象】
类定义了一组概念的模型
,而对象是真实的实体
【定义类和类的成员】
class
Student
{
int age = 26; //
字段
///<summary>
///
姓名
///</summary>
private string name;//
字段
public string Name //
属性
{
get { return name; }
set { name = value; }
}
public void SayHi() //
方法
{
string message;
message = string.Format(
"
大家好,我是{0} 同学."
,
name);
MessageBox.Show(message);
}
}
字段
,属性,方法都叫做类的成员.
字段:用来表示类和对象相关的数据
,当我们在类中要计算时要添加字段.
属性:用来表示类的状态
,需要描述对象状态和特征时要在类中添加属性.
方法:表示类的行为
,当需要对象做一件事时,需要添加方法.
如何使用
C#属性:
在
C#中通常不会直接访问类中的字段,而是通过get和set访问器来访问,这种实现方式称为属性.
get访问器用来访问相应私有字段的值
,用return来返回.
set访问器设置相应私有字段的值
,可以看作是一个隐含的输入参数.
只读属性
,只包含get访问器,只写属性只包含set访问器,读写属性包含get和set访问器.
封装:以下是一个封装好的属性
///
<summary>
///
姓名
///
</summary>
private
string name;//
字段
public
string Name //
属性
{
get { return name; }
set { name = value; }
}
方法参数:
Ref方式传递和
Out方式传递:ref侧重于修改,out侧重于输出.
在具有
out参数的方法中,必须对out参数进行赋值,而ref不需要,在方法中没有给out参数赋值之前,是不能使用这个参数进行运算的.
方法重载:
类中两个以上的方法
,取的名字相同,只要使用的参数类型或参数个数不同,编译器便知道该调用那个方法.
重载方式有两种
:参数不同类型的重载和参数个数不同的重载.不允许仅仅返回值类型不同的方法的重载.
构造函数:
它是一个特殊的方法
,它通常在类的成员的最前面,它用于在创建实例时对对象进行初始化.一各类的构造函数名通常与类名相同,构造函数没有返回值,在构造函数中不要对类的实例做初始化以外的事情.
(
如果有不对的或需要补充的地方
,
还请老师和同学们帮忙指出来
,
谢谢
!)
2010/3/26
整理