Intermediate 16 min readModule: Module 9: Classes, Decorators & Object-Oriented TS
Access Modifiers & Parameter Properties
Encapsulate class internals with private, protected, readonly, and concise parameter property constructors.
What You Will Learn in This Lesson
- Compile-time access modifiers (private, protected, public)
- ECMAScript native private fields (#field)
- Constructor parameter properties for instant field binding
Introduction & Core Concept
TypeScript extends JavaScript classes with visibility modifiers, abstract classes, and concise constructor parameter initialization.
WHY DOES THIS MATTER IN THE REAL WORLD?
Parameter properties turn 5-line constructor boilerplate into a single elegant line.
Parameter Properties & Private State
typescripttypescript
1234567891011121314class BankAccount {// Parameter property initializes and assigns fields automaticallyconstructor(public readonly accountId: string,private balance: number) {}getBalance(): number {return this.balance;}}const acc = new BankAccount("ACC-1", 500);console.log("Account:", acc.accountId, "| Balance: $" + acc.getBalance());
Line-by-Line Technical Breakdown
1Abstract classes define contracts with partial implementation for child subclasses.
Try It Yourself (Interactive Editor)
Modify the code in real-time and click Run to test live browser output and console logs.
Intelligent Code Runner & Live Sandbox[TYPESCRIPT]
TYPESCRIPT SOURCE EDITOR
Interactive Live CodeIndustry Best Practices & Professional Standards
- Use parameter properties to eliminate repetitive constructor assignments.
Lesson Summary & Core Takeaways
- Classes and access modifiers provide enterprise object-oriented encapsulation.