04-04-2026Ongeveer 1 minutenOngeveer 194 woorden
Begrip: Klassen
Klassen worden aangemaakt via het class keyword.
Via het implements keyword kunnen klassen aangeven dat ze een interface implementeren, dit betekent dat de klasse alle eigenschappen en methodes van de interface moet bevatten.
Via het extends keyword kunnen klassen aangeven dat ze een andere klasse uitbreiden, dit betekent dat de klasse alle eigenschappen en methodes van de andere klasse erft, en dat deze eventueel overschreven kunnen worden. Als de klasse waarvan overgeërft wordt een abstracte klasse is, dan moeten alle abstracte methodes van deze klasse geïmplementeerd worden in de concrete subklasse.
Interfaces implementeren
interface Person {
name: string
firstName: string
accomplishments: string[]
yearOfBirth: number
// Een optionele property.
yearOfDeath?: number
}
class Employee implements Person {
name: string
firstName: string
accomplishments: string[]
yearOfBirth: number
yearOfDeath?: number
employeeId: number
department: string
constructor(name: string, firstName: string, accomplishments: string[], yearOfBirth: number, employeeId: number, department: string) {
this.name = name
this.firstName = firstName
this.accomplishments = accomplishments
this.yearOfBirth = yearOfBirth
this.employeeId = employeeId
this.department = department
}
}Abstracte klassen
abstract class Shape {
abstract area(): number
}
class Circle extends Shape {
radius: number
constructor(radius: number) {
super()
this.radius = radius
}
area(): number {
return Math.PI * this.radius ** 2
}
}