# Services & Dependency Injection (Angular) > Services, @Injectable, providedIn, dependency injection, hierarchical injectors, injection tokens, providers - 20 interview questions - Junior - [Interview Questions: Angular](https://sharpskill.dev/en/technologies/angular/interview-questions.md) ## 1. What is a service in Angular? **Answer** A service is a TypeScript class decorated with @Injectable that encapsulates business logic or shared data. Services follow the separation of concerns principle by extracting reusable logic out of components. They can be injected into other classes through Angular's dependency injection system, promoting code modularity and testability. ## 2. Which decorator makes a class injectable in Angular? **Answer** The @Injectable decorator is mandatory for a class to be used as a service in Angular's dependency injection system. This decorator allows Angular to generate the necessary metadata to resolve the service's dependencies. Without @Injectable, the TypeScript compiler would not preserve the type information needed for injection, causing runtime errors. ## 3. What is the correct syntax to create a basic service? **Answer** The complete syntax for creating an Angular service includes importing the Injectable decorator from @angular/core, then applying it to a class with the providedIn option. This modern configuration automatically registers the service in the application's root injector. The providedIn: 'root' option is the best practice as it enables tree-shaking and guarantees a global singleton. ## 17 more questions available - What does providedIn: 'root' mean in @Injectable? - How to inject a service into a component? Sign up for free: https://sharpskill.dev/en/login ## Other Angular interview topics - [TypeScript Basics](https://sharpskill.dev/en/technologies/angular/interview-questions/typescript-basics.md): 25 questions, Junior - [TypeScript Advanced](https://sharpskill.dev/en/technologies/angular/interview-questions/typescript-advanced.md): 20 questions, Junior - [Angular Fundamentals](https://sharpskill.dev/en/technologies/angular/interview-questions/angular-fundamentals.md): 20 questions, Junior - [Components & Lifecycle](https://sharpskill.dev/en/technologies/angular/interview-questions/components-lifecycle.md): 20 questions, Junior - [Angular Modules Organization](https://sharpskill.dev/en/technologies/angular/interview-questions/modules-organization.md): 22 questions, Mid-Level - [Angular CLI](https://sharpskill.dev/en/technologies/angular/interview-questions/angular-cli.md): 18 questions, Junior - [Directives & Pipes](https://sharpskill.dev/en/technologies/angular/interview-questions/directives-pipes.md): 22 questions, Mid-Level - [Routing & Navigation](https://sharpskill.dev/en/technologies/angular/interview-questions/routing-navigation.md): 24 questions, Mid-Level - [Reactive Forms](https://sharpskill.dev/en/technologies/angular/interview-questions/forms-reactive.md): 26 questions, Mid-Level - [Template-driven Forms](https://sharpskill.dev/en/technologies/angular/interview-questions/forms-template-driven.md): 16 questions, Mid-Level - [RxJS Fundamentals](https://sharpskill.dev/en/technologies/angular/interview-questions/rxjs-fundamentals.md): 22 questions, Mid-Level - [RxJS Operators](https://sharpskill.dev/en/technologies/angular/interview-questions/rxjs-operators.md): 24 questions, Mid-Level - [HttpClient & API Calls](https://sharpskill.dev/en/technologies/angular/interview-questions/http-client.md): 22 questions, Mid-Level - [Basic State Management](https://sharpskill.dev/en/technologies/angular/interview-questions/state-management-basics.md): 20 questions, Mid-Level - [Change Detection](https://sharpskill.dev/en/technologies/angular/interview-questions/change-detection.md): 20 questions, Mid-Level - [Angular Signals](https://sharpskill.dev/en/technologies/angular/interview-questions/angular-signals.md): 20 questions, Mid-Level - [Standalone Components](https://sharpskill.dev/en/technologies/angular/interview-questions/standalone-components.md): 18 questions, Mid-Level - [Angular Unit Testing](https://sharpskill.dev/en/technologies/angular/interview-questions/testing-unit.md): 22 questions, Mid-Level - [End-to-End Testing](https://sharpskill.dev/en/technologies/angular/interview-questions/testing-e2e.md): 18 questions, Mid-Level - [Build & Optimization](https://sharpskill.dev/en/technologies/angular/interview-questions/build-optimization.md): 20 questions, Mid-Level - [NgRx Fundamentals](https://sharpskill.dev/en/technologies/angular/interview-questions/ngrx-fundamentals.md): 24 questions, Senior - [NgRx Advanced](https://sharpskill.dev/en/technologies/angular/interview-questions/ngrx-advanced.md): 24 questions, Senior - [Angular Architecture](https://sharpskill.dev/en/technologies/angular/interview-questions/angular-architecture.md): 22 questions, Senior - [Performance Optimization](https://sharpskill.dev/en/technologies/angular/interview-questions/performance-optimization.md): 22 questions, Senior - [Security & Best Practices](https://sharpskill.dev/en/technologies/angular/interview-questions/security-best-practices.md): 20 questions, Senior - [Advanced RxJS Patterns](https://sharpskill.dev/en/technologies/angular/interview-questions/advanced-rxjs-patterns.md): 22 questions, Senior - [Angular Universal & SSR](https://sharpskill.dev/en/technologies/angular/interview-questions/angular-universal-ssr.md): 20 questions, Senior - [Angular Micro-frontends](https://sharpskill.dev/en/technologies/angular/interview-questions/micro-frontends-angular.md): 20 questions, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/en/technologies/angular/interview-questions/services-dependency-injection