Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Methoden in JavaScript-Klassen Definieren | JavaScript-Klassen und Vererbung Meistern
Fortgeschrittene JavaScript-Beherrschung

bookMethoden in JavaScript-Klassen Definieren

Nachdem wir nun wissen, wie man Eigenschaften mit dem Konstruktor hinzufügt, betrachten wir als Nächstes, wie Methoden zu einer Klasse hinzugefügt werden können.

Definieren und Verwenden von Klassenmethoden

Diese Methoden arbeiten typischerweise mit den Eigenschaften des Objekts und bieten eine Möglichkeit, mit dessen Daten zu interagieren.

Um eine Klassenmethode zu definieren, deklariert man einfach eine Funktion innerhalb der Klasse, ohne das Schlüsselwort function zu verwenden.

class Animal {
  constructor(name, type) {
    this.name = name;
    this.type = type;
  }

  // Class method
  getInfo() {
    return `${this.name} is a ${this.type} animal.`;
  }
}

In diesem Beispiel ist getInfo eine Methode der Klasse Animal. Jede Instanz von Animal kann diese Methode aufrufen, um Informationen über die jeweilige Instanz abzurufen.

Wie Methoden mit Instanzen einer Klasse verknüpft sind

Wenn eine Instanz einer Klasse erstellt wird, stehen die innerhalb der Klasse definierten Methoden dieser Instanz automatisch zur Verfügung. Diese Methoden können auf die Eigenschaften der Instanz zugreifen und diese mit dem Schlüsselwort this manipulieren, das sich auf das aktuelle Objekt bezieht.

Methoden können als Werkzeuge betrachtet werden, die jedes Objekt (jede Instanz) mit sich führt. Jedes Objekt besitzt eigene Daten (Eigenschaften), teilt sich jedoch die gleichen Werkzeuge (Methoden), um mit diesen Daten zu interagieren.

Betrachten wir das folgende Beispiel:

1234567891011121314151617
class Animal { constructor(name, type) { this.name = name; this.type = type; } // Class method getInfo() { return `${this.name} is a ${this.type} animal.`; } } const lion = new Animal('Lion', 'Wild'); console.log(lion.getInfo()); // Output: Lion is a Wild animal. const pig = new Animal('Pig', 'Domestic'); console.log(pig.getInfo()); // Output: Pig is a Domestic animal.
copy

In diesem Beispiel sind sowohl lion als auch pig Instanzen der Klasse Animal. Die Methode getInfo steht beiden zur Verfügung und liefert unterschiedliche Ergebnisse, abhängig von den Eigenschaften der jeweiligen Instanz, auf der sie aufgerufen wird. Dies zeigt, wie Methoden zwischen Instanzen geteilt werden, aber auf die jeweils spezifischen Daten zugreifen.

Warum Klassenmethoden verwenden?

Klassenmethoden definieren Verhaltensweisen, die für das Objekt spezifisch sind. Sie machen den Code modularer, wartbarer und schaffen eine klare Trennung der Verantwortlichkeiten. Anstatt Objekteigenschaften direkt zu manipulieren, bieten Klassenmethoden eine kontrollierte Möglichkeit, mit den Daten des Objekts zu interagieren und diese zu verändern.

Beispiel mit einer Methode, die den Objektzustand ändert:

1234567891011121314151617181920
class Animal { constructor(name, type) { this.name = name; this.type = type; } getInfo() { return `${this.name} is a ${this.type} animal.`; } changeType(newType) { this.type = newType; } } const lion = new Animal('Lion', 'Wild'); console.log(lion.getInfo()); // Output: Lion is a Wild animal. lion.changeType('Domestic'); console.log(lion.getInfo()); // Output: Lion is a Domestic animal.
copy

In diesem Beispiel ermöglicht die Methode changeType, die Eigenschaft type des Objekts zu aktualisieren. Dies zeigt, wie Methoden Logik kapseln können, die den Zustand des Objekts direkt beeinflusst.

1. Was ist eine Klassenmethode?

2. Wie definiert man in einer Klasse eine Methode namens speak, die eine Instanz verwenden kann?

3. Was gibt der folgende Code aus?

question mark

Was ist eine Klassenmethode?

Select the correct answer

question mark

Wie definiert man in einer Klasse eine Methode namens speak, die eine Instanz verwenden kann?

Select the correct answer

question mark

Was gibt der folgende Code aus?

Select the correct answer

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 1. Kapitel 4

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen

Awesome!

Completion rate improved to 2.22

bookMethoden in JavaScript-Klassen Definieren

Swipe um das Menü anzuzeigen

Nachdem wir nun wissen, wie man Eigenschaften mit dem Konstruktor hinzufügt, betrachten wir als Nächstes, wie Methoden zu einer Klasse hinzugefügt werden können.

Definieren und Verwenden von Klassenmethoden

Diese Methoden arbeiten typischerweise mit den Eigenschaften des Objekts und bieten eine Möglichkeit, mit dessen Daten zu interagieren.

Um eine Klassenmethode zu definieren, deklariert man einfach eine Funktion innerhalb der Klasse, ohne das Schlüsselwort function zu verwenden.

class Animal {
  constructor(name, type) {
    this.name = name;
    this.type = type;
  }

  // Class method
  getInfo() {
    return `${this.name} is a ${this.type} animal.`;
  }
}

In diesem Beispiel ist getInfo eine Methode der Klasse Animal. Jede Instanz von Animal kann diese Methode aufrufen, um Informationen über die jeweilige Instanz abzurufen.

Wie Methoden mit Instanzen einer Klasse verknüpft sind

Wenn eine Instanz einer Klasse erstellt wird, stehen die innerhalb der Klasse definierten Methoden dieser Instanz automatisch zur Verfügung. Diese Methoden können auf die Eigenschaften der Instanz zugreifen und diese mit dem Schlüsselwort this manipulieren, das sich auf das aktuelle Objekt bezieht.

Methoden können als Werkzeuge betrachtet werden, die jedes Objekt (jede Instanz) mit sich führt. Jedes Objekt besitzt eigene Daten (Eigenschaften), teilt sich jedoch die gleichen Werkzeuge (Methoden), um mit diesen Daten zu interagieren.

Betrachten wir das folgende Beispiel:

1234567891011121314151617
class Animal { constructor(name, type) { this.name = name; this.type = type; } // Class method getInfo() { return `${this.name} is a ${this.type} animal.`; } } const lion = new Animal('Lion', 'Wild'); console.log(lion.getInfo()); // Output: Lion is a Wild animal. const pig = new Animal('Pig', 'Domestic'); console.log(pig.getInfo()); // Output: Pig is a Domestic animal.
copy

In diesem Beispiel sind sowohl lion als auch pig Instanzen der Klasse Animal. Die Methode getInfo steht beiden zur Verfügung und liefert unterschiedliche Ergebnisse, abhängig von den Eigenschaften der jeweiligen Instanz, auf der sie aufgerufen wird. Dies zeigt, wie Methoden zwischen Instanzen geteilt werden, aber auf die jeweils spezifischen Daten zugreifen.

Warum Klassenmethoden verwenden?

Klassenmethoden definieren Verhaltensweisen, die für das Objekt spezifisch sind. Sie machen den Code modularer, wartbarer und schaffen eine klare Trennung der Verantwortlichkeiten. Anstatt Objekteigenschaften direkt zu manipulieren, bieten Klassenmethoden eine kontrollierte Möglichkeit, mit den Daten des Objekts zu interagieren und diese zu verändern.

Beispiel mit einer Methode, die den Objektzustand ändert:

1234567891011121314151617181920
class Animal { constructor(name, type) { this.name = name; this.type = type; } getInfo() { return `${this.name} is a ${this.type} animal.`; } changeType(newType) { this.type = newType; } } const lion = new Animal('Lion', 'Wild'); console.log(lion.getInfo()); // Output: Lion is a Wild animal. lion.changeType('Domestic'); console.log(lion.getInfo()); // Output: Lion is a Domestic animal.
copy

In diesem Beispiel ermöglicht die Methode changeType, die Eigenschaft type des Objekts zu aktualisieren. Dies zeigt, wie Methoden Logik kapseln können, die den Zustand des Objekts direkt beeinflusst.

1. Was ist eine Klassenmethode?

2. Wie definiert man in einer Klasse eine Methode namens speak, die eine Instanz verwenden kann?

3. Was gibt der folgende Code aus?

question mark

Was ist eine Klassenmethode?

Select the correct answer

question mark

Wie definiert man in einer Klasse eine Methode namens speak, die eine Instanz verwenden kann?

Select the correct answer

question mark

Was gibt der folgende Code aus?

Select the correct answer

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 1. Kapitel 4
some-alt