Die Zusammenfassungsklasse (oder der Typ) ist der Typ des vom Programm deklarierten Systemnominativtyps. Selbst wie der Name schon sagt, kann die abstrakte Klasse abstrakte Methoden oder Merkmale enthalten oder nicht. Die Differenzklasse bezieht sich auf die verschiedenen Sprachstrukturen, mit denen abstrakte Typen implementiert werden können. Abstrakte Klassen lassen sich am besten durch objektorientierte Programmier- und Designprobleme mit unvollständigen Merkmalen charakterisieren.

Die Schnittstelle ist ein abstrakter Typ und sollte von Klassen ausgeführt werden, um die Schnittstelle zu definieren (im Allgemeinen). Schnittstellen können nur Methodensignaturen und persistente Deklarationen (sowohl statische als auch endgültige) enthalten, niemals Methodendefinitionen. Schnittstellen imitieren die Mehrfachvererbung und werden zum Codieren von Ähnlichkeiten verwendet, die von verschiedenen Klassen gemeinsam genutzt werden.

Arten von Schlussfolgerungen können auf verschiedene Arten erstellt, gekennzeichnet oder nachgeahmt werden. Der Programmierer erbt von einem anderen abstrakten Typ, indem er der Klassendefinition eine oder mehrere Methoden hinzufügt und explizite abstrakte Schlüsselwörter für abstrakte Typen verwendet, ohne fehlende Funktionen zu überschreiben, die zum Vervollständigen der Klassendefinition oder zum Zuweisen einer bestimmten Methode zu einem Objekt erforderlich sind. Ausrichtung der Dies ist eine Programmiersprache, die die sogenannte Methode nicht direkt implementiert.

Schnittstellen können mit abstrakten Methoden identifiziert werden. Klassen können auch in Schnittstellen gehalten werden. Wenn die Klasse die Schnittstelle implementiert und nicht alle Methoden implementiert, muss die abstrakte ID verwendet werden, andernfalls ist diese ID nicht erforderlich (da alle Schnittstellen abstrakt sind). Klassen können auch mehrere Schnittstellen implementieren.

Wenn Schnittstellen zum Definieren gemeinsamer Schnittstellen verwendet werden, können abstrakte Typen zum Identifizieren und Ausführen eines Protokolls verwendet werden (dies ist eine Reihe von Operationen, die von allen Objekten unterstützt werden sollten, die ein Protokoll implementieren). Abstrakte Typen erscheinen nicht in Untertitelsprachen. Diese Untertypen müssen alle erforderlichen Funktionen ausführen und die ordnungsgemäße Ausführung des Programms sicherstellen. Es gibt verschiedene Möglichkeiten, abstrakte Typen zu erstellen: vollständig abstrakte Basisklassen - Klassen, die explizit abstrakte oder abstrakte (nicht implementierte) Methoden deklarieren; Zu den gängigen Lisp-Objektsystemen gehören Aromen, die auf Aromen basieren. Java natürlich; und Eigenschaften, die als Erweiterung von Smalltalk dienen.

Schlussfolgerung: 1. Abstrakte Klassen (oder Typen) veröffentlichen Programme; Schnittstellen sind abstrakte Typen, die alle Klassen ausführen müssen, um ihre Schnittstellen anzuzeigen. 2. Abstrakte Typen können anhand eines bestimmten Schlüsselworts identifiziert werden. Die Schnittstellen sind abstrakt, sodass Sie überhaupt nicht mit dem Schlüsselwort signieren müssen (es sei denn, eine bestimmte Klasse installiert die Schnittstelle nicht, aber nicht alle Methoden).

Referenzen