Нам часто говорят, что мы должны защищать инкапсуляцию, создавая методы getter и setter (свойства в C #) для полей класса, вместо того, чтобы открывать поля внешнему миру.
Но во многих случаях поле просто содержит значение и не требует каких-либо вычислений для получения или установки. Для них мы все сделали бы это число:
public class Book
{
private string _title;
public string Title
{
get{ return _title; }
set{ _title = value; }
}
}
Ну, у меня есть признание, я не мог писать все это (на самом деле, это было не то, чтобы писать, это нужно было смотреть на это), поэтому я стал жуликом и использовал открытые поля.
Затем идет C # 3.0, и я вижу, что они добавили автоматические свойства:
public class Book
{
public string Title {get; set;}
}
что является более аккуратным, и я благодарен за это, но на самом деле, что же отличается от простого публичного выступления?
public class Book
{
public string Title;
}
prop
Фрагмент кода позволяет быстро создавать свойства. Просто введите prop
вкладку.