1. 程式人生 > >C#中屬性的使用

C#中屬性的使用

關於屬性和公有欄位的區別:

公有欄位可以被自由無限制的訪問。如果屬性寫成:

public int A {get;set;}
那麼和公有欄位沒有區別,用法也是一樣的。但是屬性的用法可以限制欄位。比如:

int _age;
public int Age
{
    get{return _age;}
    set
    {
        if(value>0&&value<150)// 限制使用者輸入一些稀奇古怪的年齡充數
        {
            _age=value;
        }
    }
}

屬性的意義:

屬性反應了面向物件的程式設計思想,即不能直接操作類的欄位。屬性隔離了欄位,而且能對要賦值的欄位進行監測,合乎要求的才會被允許

屬性可以保證安全,當不在本類中使用時可以保證使用屬性名可以避免用欄位的名字。

屬性的set和get函式可以限制欄位的一些功能,以達到某種目的。

屬性沒有儲存資料的功能,資料都存在欄位中,所以只有修改欄位的資料才能更改資料,修改屬性的值沒用。