Что такое конструктор в C#

Конструктор - это специальный метод, который используется для инициализации объекта. Каждый класс имеет конструктор, если мы явно не объявляем конструктор для любого класса C#, компилятор строит конструктор по умолчанию для этого класса. Конструктор не имеет никакого типа возврата. Конструкторы отвечают за инициализацию объекта и выделение памяти его класса.

Конструктор C# вызывается во время создания объекта. Он создает значения, т.е. предоставляет данные для объекта, поэтому он известен как конструктор.

Правила создания конструктора

Существуют два правила, определенные для конструктора.

  1. Имя конструктора должно совпадать с именем класса
  2. Конструктор не должен иметь явного типа возврата

Тип конструкторов:

Существует два типа конструкторов:

  1. Конструктор по умолчанию (конструктор no-arg)
  2. Параметрированный конструктор

Конструктор по умолчанию C#

Конструктор, который не имеет параметра, известен как конструктор по умолчанию.

Пример:

Вышеупомянутый конструктор Student () не принимает никаких аргументов, поэтому он является примером конструктора default / non-parameterized.
С помощью этого типа конструктора объект будет создан следующим образом:

Параметрированный конструктор в C#

Вышеуказанный конструктор принимает два аргумента один int и другой float для инициализации роли экземпляров экземпляров и меток для вновь созданного объекта, и поэтому он называется параметризованным конструктором. С помощью этого типа конструктора объект будет создан следующим образом:

Перегрузка конструктора

Подобно методам, конструктор также может быть перегружен. Перегруженные конструкторы дифференцируются по их типу параметров или количеству параметров. Перегрузка конструктора не сильно отличается от перегрузки метода. В случае перегрузки метода у вас есть несколько методов с одним и тем же именем, но с другой подписью, тогда как при перегрузке конструктора у вас есть несколько конструкторов с различной подписью, но разница только в том, что у конструктора нет типа возврата на C#.

Теперь следуем способы, с помощью которых мы можем создать экземпляр объекта.

Статический конструктор:

Статический конструктор - это специальный конструктор, который вызывается до создания первого объекта класса. Он используется для инициализации любых статических данных или для выполнения определенного действия, которое необходимо выполнить только один раз.
Время выполнения статического конструктора неизвестно, но это определенно до создания первого объекта - может быть во время загрузки сборки.

Правила для статического конструктора:

  • Класс может иметь только один статический конструктор
  • Статический конструктор не может иметь никакого параметра
  • У статического конструктора не может быть спецификатора доступа
  • Он используется для инициализации статических элементов данных класса
  • для любого количества создания объекта статический конструктор запускается только один раз
  • Статический конструктор запускается при использовании класса
  • Программист не может вызывать статический конструктор

У нас может быть 2 конструктора.

Частный конструктор:

Частный конструктор - это специальный конструктор экземпляров, который используется в классе, который содержит только статический член.
Если у класса есть один или несколько частных конструкторов и нет общего конструктора, тогда другим классам не разрешается создавать экземпляр этого класса.

Объект класса может быть создан как:

Но определение такого объекта не будет работать.

Правила для частного конструктора:

  • одно использование частного конструктора - это когда у нас есть только статический член.
  • Он обеспечивает реализацию шаблона одноэлементного класса
  • Когда мы предоставим конструктор (private / public / any), компилятор не добавит конструктор public без параметров в любой класс.

 

Источник: http://www.csharpstar.com/csharp-constructor/

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (1 оценок, среднее: 5,00 из 5)
Adblock
detector