Как я понимаю разницу между классом Static и классом Non-Static Singleton, static - это просто неинстанцированный «тип» в C #, где Singleton является истинным «объектом». Другими словами, все статические члены в статическом классе присваиваются типу, но в Singleton размещаются под объектом. Но имейте в виду, что статический класс по-прежнему ведет себя как ссылочный тип, так как он не является типом значения, как Struct.
Это означает, что при создании Singleton, поскольку сам класс не является статическим, но его член имеет преимущество, преимущество заключается в том, что статический член внутри Singleton, который ссылается на себя, связан с фактическим «объектом», а не с пустым «типом» о себе. Такого рода теперь проясняется разница между статическим и нестатическим синглтоном за пределами его других функций и использования памяти, что меня смущает.
Оба используют статические элементы, которые являются единичными копиями элемента, но Singleton оборачивает указанный элемент вокруг истинного экземпляра "объекта", адрес которого существует в дополнение к его статическому элементу. Этот объект сам обладает свойствами, в которых можно передавать и ссылаться на него, добавляя ценность. Класс Static - это просто тип, поэтому он не существует, кроме как для указания на его статические члены. Эта концепция как бы скрепила назначение Синглтона против Статического Класса помимо наследования и других вопросов.