Zum Inhalt springen

abstrakt

Das abstract-Schlüsselwort in PHP verstehen

In PHP wird das abstract-Schlüsselwort verwendet, um abstrakte Klassen und abstrakte Methoden zu definieren. Eine abstrakte Klasse ist eine Klasse, die nicht instanziiert werden kann und dazu gedacht ist, von anderen Klassen erweitert zu werden. Eine abstrakte Methode ist eine Methode, die in einer abstrakten Klasse deklariert wird, aber keine Implementierung bereitstellt.

Was ist eine abstrakte Klasse?

Eine abstrakte Klasse ist eine Klasse, die nicht instanziiert werden kann. Sie ist dazu gedacht, von anderen Klassen erweitert zu werden, die konkrete Implementierungen für ihre abstrakten Methoden bereitstellen können. Eine abstrakte Klasse kann sowohl abstrakte als auch nicht-abstrakte Methoden enthalten. Wenn eine Klasse jedoch mindestens eine abstrakte Methode enthält, muss sie als abstrakt deklariert werden.

Was ist eine abstrakte Methode?

Eine abstrakte Methode ist eine Methode, die in einer abstrakten Klasse deklariert wird, aber keine Implementierung bereitstellt. Stattdessen wird die Implementierung von einer Unterklasse der abstrakten Klasse bereitgestellt. Eine abstrakte Methode wird mit dem abstract-Schlüsselwort deklariert und enthält keinen Methodenrumpf.

So definieren Sie eine abstrakte Klasse und Methode in PHP

Um eine abstrakte Klasse in PHP zu definieren, verwenden Sie das abstract-Schlüsselwort vor dem class-Schlüsselwort. Eine abstrakte Methode wird innerhalb der Klasse mit dem abstract-Schlüsselwort deklariert, gefolgt vom Sichtbarkeitsmodifikator, dem Methodennamen und den Parametern, jedoch ohne Methodenrumpf.

php
<?php

abstract class Animal {
   abstract public function makeSound();
}

Jede Klasse, die die abstrakte Klasse erweitert, muss alle ihre abstrakten Methoden implementieren. Hier ist ein praktisches Beispiel:

php
<?php

class Dog extends Animal {
   public function makeSound() {
      echo "Woof!";
   }
}

$dog = new Dog();
$dog->makeSound(); // Output: Woof!

Hinweis: Abstrakte Methoden können in PHP nicht als private oder static deklariert werden. Sie müssen public oder protected sein.

Fazit

Das abstract-Schlüsselwort in PHP wird verwendet, um abstrakte Klassen und Methoden zu definieren. Eine abstrakte Klasse kann nicht instanziiert werden und ist dazu gedacht, von anderen Klassen erweitert zu werden. Eine abstrakte Methode ist eine Methode, die in einer abstrakten Klasse deklariert wird, aber keine Implementierung bereitstellt. Stattdessen wird die Implementierung von einer Unterklasse der abstrakten Klasse bereitgestellt. Das Verständnis der Verwendung des abstract-Schlüsselworts in PHP kann Ihnen helfen, effektiveren und effizienteren Code zu schreiben.

Übungen

Welche Regeln gelten für abstrakte Klassen und Methoden in PHP, wie auf w3docs.com erklärt?

Finden Sie das nützlich?

Dual-run-Vorschau — vergleichen Sie mit den Symfony-Routen live.