Nein. Variablen (so wie y
)
können nicht in eine Schnittstelle gestellt werden.
Nur Konstanten und Methoden.
interface IrgendeineSchnittstelle
{
public final int X = 32;
public double y;
public double addiereAuf( );
}
Eine Klassendefinition muss immer eine Superklasse erweitern, aber sie kann 0 oder mehr Schnittstellen implementieren:
class IrgendeineKlasse extends Superklasse implements IrgendeineSchnittstelle { Körper der üblichen Klassendefinition }
Der Körper der Klassendefinition ist der gleiche wie immer. Aber da die Klasse eine Schnittstelle implementiert, muss der Körper eine Definition jeder Methode der Schnittstelle enthalten. Die Klassendefinition kann wie gewöhnlich Zugriffsmodifizierer verwenden. Hier ist eine Klassendefinition, die drei Schnittstellen implementiert:
public class GrosseKlasse extends Superklasse implements SchnittstelleA, SchnittstelleB, SchnittstelleC { Körper der üblichen Klassendefinition }
Jetzt muss GrosseKlasse
eine Methodendefinition für jede Methode
in jeder Schnittstelle zur Verfügung stellen.
Dieselben Schnittstellen können von einer beliebigen Anzahl Klassen implementiert werden.
Hier ist eine weitere Klassendefinition:
public class KleineKlasse implements SchnittstelleA { Körper der üblichen Klassendefinition }