Um Schnittstellen zu verstehen, müssen wir zunächst abstrakte Klassen kennen. Was ist also eine abstrakte Klasse?
Problembeschreibung: Wir haben viele Objekte im Leben, die nicht konkret beschrieben werden können. Beispielsweise können wir sagen, dass ein Viereck vier Seiten hat. Genauer gesagt sind zwei Seiten eines Rechtecks symmetrisch und gleich, und vier Seiten eines Quadrats sind symmetrisch und gleich. Bei gewöhnlichen Grafiken ist es jedoch schwierig, sie im Detail zu beschreiben. Die Konvertierung in die Java-Sprache bedeutet: Für eine ganz bestimmte Klasse können wir ihre verschiedenen Attribute und Methoden leicht definieren, aber für einige Klassen ist es für uns schwierig zu verstehen, wie ihre Methoden implementiert werden. Zu diesem Zeitpunkt können wir abstrakte Klassen verwenden.
Das Syntaxformat einer abstrakten Klasse ist wie folgt:
1 public abstract class 类名{2 abstract 返回值类型 方法名(参数列表);//定义抽象方法 3 }
Eine mit „Abstrakt“ definierte Klasse wird als abstrakte Klasse bezeichnet, und eine mit „Abstrakt“ definierte Methode wird als abstrakte Methode bezeichnet.
Abstrakte Methoden haben keine Methodenkörper und selbst keine Bedeutung, daher können abstrakte Klassen nicht instanziiert werden.
Wenn es von seiner Unterklasse geerbt wird, muss die Unterklasse alle darin enthaltenen abstrakten Methoden implementieren.
Solange eine Klasse eine abstrakte Methode enthält, muss diese Klasse als abstrakte Klasse definiert werden.
Nachdem wir die abstrakte Klasse verstanden haben, denken wir weiter über die folgenden Fragen nach:
public abstract class shape {//定义一个图形抽象类public abstract void toString();//toString抽象方法public abstract void paint();//画图的抽象方法}public class triangle extends shape {public void toString() { system.out.println("toString"); }public void paint() { system.out.println("paint"); } }
Interface ist eine Erweiterung der abstrakten Klasse, die den Mangel der Mehrfachvererbung in Java behebt. Wir können die Paint-Methode in eine Schnittstelle kapseln und dann die Unterklasse der zu verwendenden Grafikklasse diese Schnittstelle implementieren lassen. In Java kann eine Klasse mehrere Schnittstellen implementieren. Wir können verschiedene Methoden in Schnittstellen kapseln und sie der Klasse zur Verwendung überlassen.
Das Schlüsselwort der Schnittstelle ist Schnittstelle. Seine Definition lautet wie folgt:
public interface 接口名 extends 类名 implements 接口,....{ //定义常量 public static final 数据类型 常量名=值; //定义抽象方法 public abstract 返回值类型 方法名 (参数列表); }
Das obige ist der detaillierte Inhalt vonWas ist eine abstrakte Klasse in Java?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!