341 of 410 menu

Het sleutelwoord interface

Het sleutelwoord interface wordt gebruikt om interfaces te maken - speciale constructies die definiëren welke methoden een klasse moet implementeren. Interfaces bevatten alleen methodedefinities zonder hun implementatie. Een klasse die een interface implementeert, moet alle methoden bevatten die in de interface zijn gedefinieerd.

Syntaxis

interface InterfaceName { public function method1(); public function method2($param); // ... }

Voorbeeld

Laten we een eenvoudige interface en een klasse die deze implementeert maken:

<?php interface Logger { public function log($message); } class FileLogger implements Logger { public function log($message) { echo "Loggen naar bestand: " . $message; } } $logger = new FileLogger(); $logger->log("Testbericht"); ?>

Resultaat van de code-uitvoering:

'Loggen naar bestand: Testbericht'

Voorbeeld

Een interface kan meerdere methoden bevatten, en een klasse moet ze allemaal implementeren:

<?php interface Shape { public function calculateArea(); public function calculatePerimeter(); } class Circle implements Shape { private $radius; public function __construct($radius) { $this->radius = $radius; } public function calculateArea() { return 3.14 * $this->radius * $this->radius; } public function calculatePerimeter() { return 2 * 3.14 * $this->radius; } } $circle = new Circle(5); echo "Oppervlakte: " . $circle->calculateArea(); ?>

Resultaat van de code-uitvoering:

'Oppervlakte: 78.5'

Zie ook

  • het commando class,
    voor het declareren van klassen
  • het commando trait,
    voor het declareren van traits
Nederlands
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wij gebruiken cookies voor de werking van de site, analyse en personalisatie. De verwerking van gegevens gebeurt volgens het Privacybeleid.
alles accepteren aanpassen weigeren