为了更好的隐藏数据成员,将对数据成员的存储与访问分离开,避免直接访问可能造成的错误,同时又具备使用数据成员的灵活性,我们用到了属性。对于属性的读写我们用到set和get。通过set方法来设置属性,get方法来获取属性。 对于属性的读写主要有两种方式: 1、与Java相同。使用纯方法来访问属性。具体代码如下 class Student
{
private string name;
private uint number;
public void SetName(string name)
{
this.name = name;
}
public void SetNumber(uint number) {
this.number = number;
}
public string GetName() {
return name;
}
public uint GetNumber() {
return number;
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
使用: class C
{
public static void Main(string[] args)
{
Student s = new Student();
s.SetName("Mike");
s.SetNumber(23);
Console.WriteLine("student name:{0},number:{1}",s.GetName(),s.GetNumber());
}
}
输出结果:
2.使用属性方式访问属性。 使用这种方式需要注意,同一属性的get和set方法不能够分开定义。及name属性的set和get方法都要放在public string Name的属性定义中,若有两个public string Name编译会报错。编译器会认为Student类定义了两个同名的属性,一个只读一个只写。 class Student
{
private string name;
private uint number;
public string Name
{
set
{
name = value;
}
get
{
return name;
}
}
public uint Number
{
set
{
number = value;
}
get
{
return number;
}
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
使用: class C
{
public static void Main(string[] args)
{
Student s = new Student();
s.Name = "Mike";
s.Number = 23;
Console.WriteLine("student name:{0},number:{1}",s.Name,s.Number);
}
}
输出结果:

|