Статический класс - это объект-тип, который находится в High Frequency Heap? Если это не объект-тип, то что из себе представляет статический класс в High Frequency Heap?
Денис Бредун, я это написал автору ответа, потому что то, что он написал звучит странно хотя бы потому, что нельзя создать экземпляр статического класса явно (через new). А он пишет так, как будто можно.
Денис Бредун, да и вообще звучит странно, что если ты не создал экземпляр класса (объект), то это тип. В смысле это тип? Если ты не создал экземпляр класса, то ты его просто не создал, а class или struct в любом случае остаётся типом, просто ты можешь создать из них экземпляры, в случае с классом в куче, а со структурой на стеке.
Денис Бредун, вот из доков:
Как и в случае с типами всех классов, сведения о типе для статического класса загружаются средой выполнения .NET, когда загружается программа, которая ссылается на класс. Программа не может точно указать, когда загружается класс. Однако гарантируется загрузка этого класса, инициализация его полей и вызов статического конструктора перед первым обращением к классу в программе. Статический конструктор вызывается только один раз, и статический класс остается в памяти на время существования домена приложения, в котором находится программа.
Денис Бредун, есть книга: "CLR via C# - Программирование на платформе Microsoft.NET Framework 4.5 на языке C#. 4-е издание". Там много деталей описано, что и как устроено. Возможно есть что-то новее, я просто не в курсе.