0Pricing
TypeScript Academy · Lektion

Erweiterte Klassenfunktionen

Entdecken Sie erweiterte Klassenfunktionen wie abstrakte Klassen, Zugriffsmodifizierer und statische Member, um sauberen, modularen und objektorientierten TypeScript-Code zu schreiben.

Erweiterte Klassenfunktionen ist eine kostenlose TypeScript Academy-Lektion auf CoddyKit. Dies ist Lektion 2 von 3. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des TypeScript Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der TypeScript Academy-Kurs umfasst insgesamt 3 Lektionen.

Einführung in erweiterte Klassenfeatures

Einführung in erweiterte Klassenfeatures

TypeScript bietet mehrere erweiterte Klassenfeatures, mit denen Sie modularen, skalierbaren und wartbaren objektorientierten Code schreiben können.

In dieser Lektion lernen Sie Zugriffsmodifizierer, abstrakte Klassen, statische Member und mehr kennen.

Erweiterte Klassenfunktionen — Illustration 1

Überblick über erweiterte Klassenfeatures

Einführung in erweiterte Klassenfeatures

TypeScript bietet mehrere erweiterte Klassenfeatures, mit denen Sie modularen, skalierbaren und wartbaren objektorientierten Code schreiben können.

In dieser Lektion lernen Sie Zugriffsmodifizierer, abstrakte Klassen, statische Member und mehr kennen.

Erweiterte Klassenfunktionen — Illustration 2

Zugriffsmodifizierer

Zugriffsmodifizierer

TypeScript stellt drei Zugriffsmodifizierer bereit, um die Sichtbarkeit von Klassenmitgliedern zu steuern:

  • public: Überall zugänglich (Standard).
  • private: Nur innerhalb der Klasse zugänglich.
  • protected: Innerhalb der Klasse und ihrer Unterklassen zugänglich.
class Person {
  public name: string;
  private age: number;
  protected role: string;

  constructor(name: string, age: number, role: string) {
    this.name = name;
    this.age = age;
    this.role = role;
  }
}

class Employee extends Person {
  getRole(): string {
    return this.role; // Accessible because it's protected
  }
}

Abstrakte Klassen

Abstrakte Klassen

Abstrakte Klassen dienen als Vorlagen für andere Klassen. Sie können nicht direkt instanziiert werden und dürfen abstrakte Methoden enthalten.

abstract class Shape {
  abstract getArea(): number;
}

class Circle extends Shape {
  constructor(public radius: number) {
    super();
  }

  getArea(): number {
    return Math.PI * this.radius ** 2;
  }
}

const circle = new Circle(5);
console.log(circle.getArea()); // 78.54

Statische Member

Statische Member

Statische Member gehören zur Klasse selbst und nicht zu einer Instanz der Klasse. Der Zugriff erfolgt über den Klassennamen.

class MathUtils {
  static PI = 3.14;

  static calculateCircleArea(radius: number): number {
    return this.PI * radius ** 2;
  }
}

console.log(MathUtils.PI); // 3.14
console.log(MathUtils.calculateCircleArea(5)); // 78.5

Getter und Setter

Getter und Setter

Getter und Setter ermöglichen es Ihnen, zu steuern, wie auf Eigenschaften in einer Klasse zugegriffen und wie sie geändert werden.

class Person {
  private _name: string;

  constructor(name: string) {
    this._name = name;
  }

  get name(): string {
    return this._name;
  }

  set name(newName: string) {
    this._name = newName;
  }
}

const person = new Person('Alice');
console.log(person.name); // Alice
person.name = 'Bob';
console.log(person.name); // Bob

Schreibgeschützte Eigenschaften

Schreibgeschützte Eigenschaften

Der Modifizierer readonly stellt sicher, dass eine Eigenschaft nur während der Initialisierung gesetzt und später nicht mehr geändert werden kann.

class Vehicle {
  readonly make: string;

  constructor(make: string) {
    this.make = make;
  }
}

const car = new Vehicle('Toyota');
console.log(car.make); // Toyota
// car.make = 'Honda'; // Error: Cannot assign to 'make' because it is a read-only property.

Private und protected Konstruktoren

Private und protected Konstruktoren

Klassen können private oder protected Konstruktoren besitzen, um zu steuern, wie und wo sie instanziiert werden.

class Singleton {
  private static instance: Singleton;

  private constructor() {}

  static getInstance(): Singleton {
    if (!this.instance) {
      this.instance = new Singleton();
    }
    return this.instance;
  }
}

const singleton = Singleton.getInstance();
console.log(singleton);

Übungsaufgabe

Übungsaufgabe

Erstellen Sie eine Klasse mit einem protected-Konstruktor und leiten Sie eine Unterklasse davon ab. Fügen Sie Methoden hinzu, um in der Unterklasse auf die geschützten Eigenschaften zuzugreifen.

Herzlichen Glückwunsch!

Herzlichen Glückwunsch!

Sie haben fortgeschrittene Klassenfunktionen wie Zugriffsmodifizierer, abstrakte Klassen, statische Member und vieles mehr gelernt. Üben Sie diese Konzepte, um sauberen und effizienten objektorientierten TypeScript-Code zu schreiben!

Erweiterte Klassenfunktionen — Illustration 11

Häufig gestellte Fragen

Ist die Lektion „Erweiterte Klassenfunktionen“ kostenlos?

Ja — der vollständige Text von „Erweiterte Klassenfunktionen“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des TypeScript Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der TypeScript Academy-Kurs umfasst insgesamt 3 Lektionen.

Was lerne ich in „Erweiterte Klassenfunktionen“?

Entdecken Sie erweiterte Klassenfunktionen wie abstrakte Klassen, Zugriffsmodifizierer und statische Member, um sauberen, modularen und objektorientierten TypeScript-Code zu schreiben. Du übst TypeScript Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um TypeScript Academy zu starten?

Keine Vorkenntnisse erforderlich. TypeScript Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 2 von 3.

Wie lange dauert die Lektion „Erweiterte Klassenfunktionen“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser TypeScript Academy-Lektion Code schreiben und ausführen?

Ja. Jede TypeScript Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. Erweiterte Typeneingrenzung
  2. Erweiterte Klassenfunktionen
  3. Bedingte Typen
← Zurück zu TypeScript Academy