@beduin01

Правильно ли я понимаю назначение конструкторов классов?

Вопросы распишу по-порядку, чтобы было проще ответить:
1. Конструкторы нужны для инициализации поле внутри класса. Верно?
2. Т.е. чтобы я потом этими полями мог пользоваться при создании нового экземпляра класса?
3. Как быть, если мне никакие поля в класса инициализировать не надо и в нем просто идут только функции, в каждую из которых я передаю требуемые значения.

class TestClass
{
	string data; // если это переменная, которая мне нужна глобально в классе, то ее как-то инициализировать надо?
	string name;
	this (string name) //вот это значение я передаю в класс при его иницициализаа
	{
		this.name = name; // значение которое мы принимаем при создании класса назначаем переменной name доступной для каждого экземпляра класса
	}
  • Вопрос задан
  • 2375 просмотров
Пригласить эксперта
Ответы на вопрос 2
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
Конструктор - конструирует, задает начальное состояние объекта. Туда передаются все зависимости для этого изначального состояния. Если конструктор вам не нужен - не пишите его. Будет использоваться дефолтный конструктор.
Ответ написан
Комментировать
@Eugene22
вы не совсем правильно понимаете предназначение конструктора. Его основная цель, грубо говоря, - создание экземпляра класса или объекта. А инициализация полей - это дело второстепенное - оно может быть, а может и не быть. Можно инициализировать, а можно не инициализировать, можно часть инициализировать, а можно и все поля. Все зависит от конкретной задачи
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы