В нашем примере свойство
Address.ZipCode
считается доступным для чтения и записи, так как определены оба метода: установщик и получатель. Конечно, иногда может потребоваться лишить клиент возможности устанавливать значение данного поля. В этом случае вы можете сделать это поле неизменяемым, опустив метод-установщик. Чтобы проиллюстрировать неизменяемые свойства, предотвратим установку поля
Address.city
клиентом, оставив
Address.ZipCode
как единственную ветвь кода, задачей которого является изменение значение поля:
class Address {
public string City {
get
{
return city;
} }
protected string zipCode; public string ZipCode {
get
{
return zipCode;
}
set
{
// Сверить значение с базой данных.
zipCode = value;
// обновить город с помощью проверенного zipCode. } } }