Основы объектно-ориентированного программирования на языке C# book | Page 115
7.3 Конструктори класiв
Бачимо, що ми не маємо доступу до методу PublicMethod() з iнших
збiрок, через те, що клас оголошений як internal.
7.3 Конструктори класiв
7.3.1 Конструктори екземплярiв класiв
В першому роздiлi ми почали вже вивчати роботу конструктора.
Тепер розглянемо його роботу бiльш детально.
Оголошення конструктора має такий вигляд:
public class_name ([arguments])
{
// тiло конструктора
}
При оголошеннi конструктора не потрiбно указувати тип результа-
ту. Оголошення класу може мiстити бiльше одного конструктора ек-
земпляру класу при умовi, що усi конструктори розрiзняються за кiль-
кiстю та/або типами аргументiв. Якщо оголошення класу не мiстить
жодного конструктора, то компiлятор автоматично забезпечить класу
неявний конструктор екземпляру класу за замовчуванням без переме-
трiв i з тiлом вигляду {} (який має у випадку не абстрактних класiв
рiвень доступу public ). Якщо оголошення класу мiстить принаймнi
один конструктор, то компiлятор не створюватиме жодного неявно-
го конструктора для класу. Аналогiчно випадку iнших членiв класу,
якщо в оголошеннi конструктора не вказаний модифiкатор доступу,
то за замовчуванням рiвень доступу для конструктора встановлює-
ться як private , що означає, що його не можна використати поза
межами класу (або вкладених типiв) для створення екземплярiв цьо-
го класу.
Розглянемо такий конcтруктор для класу Elevator :
class Elevator
{
public int Height;
public int Width;
public int Length;
public int Capacity;
public Elevator(int Height, int Width, int Length, int Capacity)
{
this.Height = Height;
this.Width = Width;
this.Length = Length;
this.Capacity = Capacity;
}
}
115