Abstraktion in JavaScript | Erklärt

Abstraktion in JavaScript | Erklärt
In JavaScript basieren die meisten Elemente auf “Objekte,"Und es verwendet"Objekt orientierte Programmierung”(Oop) auf seine eigene Weise.

Das Konzept von Abstraktion In JavaScript soll die Implementierungsdetails verbergen und die wesentlichen Funktionen eines Objekts den Benutzern hervorheben. Auf diese Weise kann die Einbettung der Abstraktion in ein JavaScript -Programm die Lesbarkeit des Codes verbessern und die Duplikation vermeiden. Durch die Bereitstellung von nur wichtigen Details für die Benutzer verbessert es auch die Sicherheit einer Anwendung.

Ich weiß nicht, wie man Abstraktion implementiert? Kein Problem! Diese Beschreibung wird erklären Abstraktion In JavaScript mit Hilfe geeigneter Beispiele. So lass uns anfangen!

Zusammenfassung Klassen in JavaScript

Wenn eine Klasse eine oder mehrere abstrakte Methoden umfasst, ist sie als eine bekanntAbstrakte Klasse”Und diese Art von Klasse hat sowohl abstrakte als auch regelmäßige JavaScript -Methoden. Denken Sie daran, dass Sie bei der Implementierung der Abstraktion in einer Klasse angeben müssen mindestens eine abstrakte Methode.

Zusammenfassung Methoden in JavaScript

In einer abstrakten Klasse eine Art von Methode, die nur deklariert wird und keine Implementierung hat oder “Funktionskörper" ist bekannt als "Zusammenfassung Methode“. Die abstrakte Methode muss in einer abstrakten Klasse deklariert werden, während ihre Definition in der hinzugefügt werden kann Unterklassen.

Wir werden nun das Verfahren zum Erstellen einer abstrakten Klasse demonstrieren.

Beispiel: So erstellen Sie eine abstrakte Klasse in JavaScript

Zunächst werden wir eine Konstruktorfunktion namens erstellen “Person" ein ... haben "Name" Eigentum. Das Erstellen “Person"Funktion wird als" wirken "Abstrakte Klasse”:

Funktion person ()
Das.Name = "Alex";
if (das.Konstruktor === Person)
Neuen Fehler werfen ("Ihre Fehlermeldung ...");

;

Im nächsten Schritt werden wir eine definieren “die Info()”Methode für die“Person"Abstract -Klasse, die den Wert des" zurückgibt "Name" Eigentum:

Person.Prototyp.info = function ()
Geben Sie dies zurück.Name;

Zuletzt werden wir eine "erstellen"PersonInstanz der abstrakten Klasse:

var person = new Person ();

Die Ausführung des bereitgestellten Codes wirft einen Fehler auf, da wir keine Objekte oder Instanzen einer abstrakten Klasse erstellen können:

Jetzt werden wir das oben gegebene Beispiel erweitern, indem wir die “implementieren“Nachlass”. Zu diesem Zweck werden wir eine andere Konstruktorfunktion erstellen, die die Methoden und Eigenschaften der “erbtPerson" Abstrakte Klasse.

Beispiel: So erweitern Sie die abstrakte Klasse in JavaScript

Im gleichen Beispiel definieren wir eine Konstruktfunktion (Unterklasse) mit dem Namen “Lehrer"Das erbt die Eigenschaften und Methoden des Erschaffenen"Person"Klasse, indem Sie die" verwenden "Prototypenkettung”:

Funktion person ()
Das.Name = "Alex";
if (das.Konstruktor === Person)
Neuen Fehler werfen ("Ihre Fehlermeldung ...");

;
Person.Prototyp.info = function ()
Rückgabe "Personname ist:" + dies.Name;

Funktionslehrer (Name)
Das.Name = Name;

Lehrer.Prototyp = Objekt.erstellen (Person.Prototyp);
var lehrer1 = neuer Lehrer ("Stepheny");
Konsole.Protokoll (Lehrer1.die Info());

In diesem Fall die Umsetzung der “Person"Abstrakte Klasse ist versteckt und die"Lehrer"Unterklasse kann nur auf die" zugreifen "die Info()" Methode, um den Wert des “zurückzugeben“Name" Eigentum:

Wir haben versucht, in früheren Beispielen Abstraktion zu implementieren. Alle Eigenschaften einer abstrakten Klasse sind jedoch nicht vollständig zufrieden; da wir noch keine abstrakten Methoden definiert haben.

Der Es6 Die JavaScript -Version bietet viele erweiterte Funktionen wie das Erstellen “Klasse" Verwendung der "KlasseSchlüsselwort und Implementierung von Methoden. Sie können auch abstrakte Methoden innerhalb einer abstrakten Klasse definieren und sie mit Hilfe von „im Kind oder in Unterklassen“ erweiternNachlass”.

Im folgenden Beispiel werden wir eine JavaScript -abstrakte Klasse mit den angegebenen Eigenschaften implementieren.

Beispiel: So implementieren Sie Abstraktion in JavaScript

Durch die Verwendung des “Klasse"Schlüsselwort, wir werden jetzt definieren"Person"Als abstrakte Klasse, mit einer"Konstrukteur()", und ein "die Info()”Abstract -Methode:

Klassenperson
Konstrukteur()
if (das.Konstruktor == Person)
Neuen Fehler werfen ("Ihre Fehlermeldung ...");


die Info()
Neuen Fehler werfen ("Die zusätzliche abstrakte Methode hat keine Implementierung");

Als nächstes werden wir eine Unterklasse erstellen “Lehrer,"Das erbt die Eigenschaften und Methode des"Person"Klasse benutzt"Nachlass"Und Definieren Sie die Implementierung der übergeordneten Klassenstract -Methode"die Info()" im "Lehrer" Klasse:

Klassenlehrer erweitert die Person
die Info()
Konsole.log ("Ich bin Lehrer");


var lehrer1 = neuer Lehrer ();
Lehrer1.die Info();

Wie Sie sehen können, die Implementierung der “die Info()„Methode wird erfolgreich ausgeführt:

Wenn die Elternklasse abstrakt “die Info()"Methode wird in" aufgerufen "LehrerKlasse, es wird einen Fehler werfen. Um diesen Fall zu überprüfen, fügen Sie die folgende Codezeile in der Definition der untergeordneten Klasse hinzudie Info()Methode und dann das Programm erneut ausführen:

super.die Info();

Die angegebene Ausgabe bedeutet, dass die Ausführung der abstrakten Methode einer abstrakten Klasse einen Fehler macht:

Wir haben alle wesentlichen Informationen zur Abstraktion in JavaScript zusammengestellt.

Abschluss

Abstraktion In JavaScript kann mit Hilfe von implementiert werden Abstrakte Klassen Und Zusammenfassung Methoden. In JavaScript muss eine abstrakte Klasse mindestens eine oder mehrere deklarierte abstrakte Methoden enthalten, während ihre Definition in den Unterklassen hinzugefügt werden kann. Die Abstraktion in JavaScript verbirgt die komplizierten und schwer zu verständigen Einzelheiten des zugrunde liegenden Systems. In dieser Beschreibung wurde die Abstraktion in JavaScript zusammen mit geeigneten Beispielen erläutert.