為了更好的隱藏?cái)?shù)據(jù)成員,將對(duì)數(shù)據(jù)成員的存儲(chǔ)與訪問分離開,避免直接訪問可能造成的錯(cuò)誤,同時(shí)又具備使用數(shù)據(jù)成員的靈活性,我們用到了屬性。對(duì)于屬性的讀寫我們用到set和get。通過set方法來設(shè)置屬性,get方法來獲取屬性。 對(duì)于屬性的讀寫主要有兩種方式: 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());
}
}
輸出結(jié)果: 2.使用屬性方式訪問屬性。 使用這種方式需要注意,同一屬性的get和set方法不能夠分開定義。及name屬性的set和get方法都要放在public string Name的屬性定義中,若有兩個(gè)public string Name編譯會(huì)報(bào)錯(cuò)。編譯器會(huì)認(rèn)為Student類定義了兩個(gè)同名的屬性,一個(gè)只讀一個(gè)只寫。 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);
}
}
輸出結(jié)果:
|