Конструктор
Конструктор - метод с именем, совпадающим с именем
класса, без возвращаемого типа. Его вызывают при
new, чтобы задать
начальное состояние полей и свойств. Если конструктор
не объявлен, компилятор добавляет пустой конструктор
без параметров, пока это возможно.
Синтаксис
class Имя
{
public Имя()
{
// инициализация
}
public Имя(тип параметр)
{
// инициализация с аргументами
}
}
Пример
Давайте зададим начальное значение поля в конструкторе:
using System;
class Holder
{
public string Text;
public Holder()
{
Text = "abcde";
}
}
class Program
{
static void Main()
{
var item = new Holder();
Console.WriteLine(item.Text);
}
}
Результат выполнения кода:
"abcde"
Пример
Давайте примем значение через параметр конструктора:
using System;
class CodeBox
{
public string Code;
public CodeBox(string code)
{
Code = code;
}
}
class Program
{
static void Main()
{
var box = new CodeBox("12345");
Console.WriteLine(box.Code);
}
}
Результат выполнения кода:
"12345"
Пример
Давайте объявим два конструктора с разным числом параметров:
using System;
class Pair
{
public int Left;
public int Right;
public Pair(int left)
{
Left = left;
Right = 0;
}
public Pair(int left, int right)
{
Left = left;
Right = right;
}
}
class Program
{
static void Main()
{
var one = new Pair(3);
var two = new Pair(1, 2);
Console.WriteLine($"{one.Left} {one.Right}");
Console.WriteLine($"{two.Left} {two.Right}");
}
}
Результат выполнения кода:
3 0
1 2
Смотрите также
-
цепочка this,
которая вызывает другой конструктор того же класса -
вызов base,
который передаёт аргументы конструктору базы -
первичный конструктор,
который задаёт параметры прямо в заголовке типа -
ключевое слово
class,
в котором объявляют экземплярные конструкторы