Singleton Services
Explain what makes a service a singleton in Angular and why that matters for shared state across components.
A singleton service is one that Angular's injector creates exactly once and hands out that same shared instance to every class that injects it, and it's the default outcome of providedIn: 'root' — the most common way services are registered in modern Angular. Interviewers ask about this early because it underpins a huge amount of practical Angular architecture: any time two unrelated components need to share state or coordinate without a direct parent-child relationship, a singleton service is almost always the answer.
It's like a single shared office thermostat rather than individual room heaters — everyone in the building is reading from and adjusting the same one, so a change one person makes is instantly visible to everyone else.