Основы объектно-ориентированного программирования на языке C# book | Page 127
7.4 Властивостi
можна вважати еквiвалентним такому:
int field_for_Number_property;
public int Number
{
get
{
return field_for_Number_property;
}
set
{
field_for_Number_property = value;
}
}
Однак слiд зауважити, що автоматична властивiсть також не може
бути доступною лише для читання або для запису. Для того щоб зро-
бити одну з вiдповiдних двох форм доступу недоступною поза межами
класу можна використовувати модифiкатор private .
Для надання початкових значень властивостям можна використо-
вувати iнiцiалiзатори таким самим чином, як i при iнiцiалiзацiı̈ полiв.
Синтаксис iнiцiалiзацi такий самий. Покажемо це на прикладi:
using System;
namespace InitPropTest
{
class Elevator
{
public int Number { get; set; }
public int Heigth { get; set; }
public int Width { get; set; }
public int Length { get; set; }
public int Capacity { get; set; }
}
class Program
{
static void Main(string[] args)
{
Elevator MyElevator = new Elevator {Number = 1208, Heigth = 2,
Width = 3, Length = 2, Capacity = 800};
Console.WriteLine("Number= " + MyElevator.Number + " Heigth =" +
MyElevator.Heigth + " Width =" + MyElevator.Width +
" Length =" + MyElevator.Length + " Capacity =" + MyElevator
.Capacity);
Console.ReadKey();
}
}
}
В цьому прикладi значення властивостей задаються за допомогою
iнiцiалiзатора об’єкту.
Властивостi не визначають мiсце в пам’ятi комп’ютера для зберi-
гання даних, тому не можуть використовуватись як параметр методу
127