What is the difference between Static class and Singleton instance in C#?
Static
- Static is a keyword
- Static classes can contain only static members
- Static objects are stored in stack.
- Static cannot implement interfaces, inherit from other classes
Singleton
- Singleton is a design pattern
- Singleton is an object creational pattern with one instance of the class
- Singleton can implement interfaces, inherit from other classes and it aligns with the OOPS concepts
- Singleton object can be passed as a reference
- Singleton supports object disposal
- Singleton object is stored on heap
- Singleton objects can be cloned
- Singleton objects are stored in Heap
Published on 08-Aug-2020 12:02:26