От каких классов наследует тип Enum в языке программирования?

В языке C# тип Enum наследует от базового класса System.Enum, который, в свою очередь, наследуется от System.ValueType, а тот — от System.Object.

Короткий ответ

Что ответить на собеседовании

В языке C# тип Enum наследует от базового класса System.Enum, который, в свою очередь, наследуется от System.ValueType, а тот — от System.Object.

Подробный разбор

Ответ с пояснениями

В языке C# тип Enum наследует от базового класса System.Enum, который, в свою очередь, наследуется от System.ValueType, а тот — от System.Object.

Иерархия выглядит так:

  • System.Object

    • System.ValueType

      • System.Enum

        • Ваш перечисляемый тип (enum)

Это означает, что все перечисления в C# являются значимыми типами (value types), но при этом имеют дополнительные возможности, предоставляемые классом Enum, например, методы для получения строкового представления, парсинга и т.д.

Пример:

enum Colors { Red, Green, Blue }

Colors c = Colors.Green;
string name = c.ToString(); // "Green"

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее