Unterschied zwischen Kapselung und Abstraktion

Unterschied zwischen Kapselung und Abstraktion
Unterschied zwischen Kapselung und Abstraktion

Video: Unterschied zwischen Kapselung und Abstraktion

Video: Unterschied zwischen Kapselung und Abstraktion
Video: Elektrotherapie: Small Fiber Matrix Stimulation vs Transkutane Elektrische Nervenstimulation (TENS) 2024, Juli
Anonim

Kapselung vs. Abstraktion

Kapselung und Abstraktion sind zwei unterschiedliche, aber verwandte Konzepte, die in OOP-Sprachen (Object Oriented Programming) zu finden sind. Kapselung ist das Konzept, Daten und Verh alten zu einer Einheit zu kombinieren. Andererseits ist Abstraktion der Prozess der Darstellung, wie sich eine Entität verhält/aussieht, im Gegensatz dazu, wie sie implementiert wird.

Was ist Kapselung?

Encapsulation ist der Vorgang, Daten und Operationen, die auf ihnen ausgeführt werden, in eine einzige Entität zu verpacken. Dies bedeutet im Wesentlichen, dass für den Zugriff auf Daten bestimmte vordefinierte Methoden verwendet werden sollten. Mit anderen Worten, auf gekapselte Daten kann nicht direkt zugegriffen werden. Dadurch wird sichergestellt, dass die Integrität der Daten gewahrt bleibt, da der Benutzer nicht direkt auf die Daten zugreifen und sie nach Belieben ändern kann. Die Benutzer erh alten oder setzen die Datenwerte nur über die Methoden, die den Benutzern öffentlich zugänglich sind. Diese Methoden bieten normalerweise eine Datenvalidierung, sodass nur die Daten im geeigneten Format in die Felder eingefügt werden dürfen. Daher sind die Vorteile der Kapselung dreifach. Durch Kapselung kann der Programmierer Felder einer Klasse schreibgeschützt oder schreibgeschützt machen. Zweitens kann eine Klasse die vollständige Kontrolle darüber haben, was in ihren Feldern gespeichert ist. Schließlich müssen sich die Benutzer einer Klasse keine Gedanken darüber machen, wie ihre Daten gespeichert werden. In Java kann der Programmierer alle Instanzvariablen als privat deklarieren und get- und set-Methoden (die öffentlich sind) bereitstellen, um auf die privaten Felder zuzugreifen und diese zu ändern.

Was ist Abstraktion?

Abstraktion ist der Prozess der Trennung der Präsentationsdetails von den Implementierungsdetails. Dies geschieht, damit der Entwickler von den komplexeren Implementierungsdetails entlastet wird. Stattdessen kann sich der Programmierer auf die Präsentation oder die Verh altensdetails der Entität konzentrieren. Einfach ausgedrückt konzentriert sich die Abstraktion darauf, wie eine bestimmte Entität verwendet werden kann, und nicht darauf, wie sie implementiert wird. Die Abstraktion verbirgt im Wesentlichen die Implementierungsdetails, sodass sich der Programmierer selbst dann, wenn sich die Implementierungsmethodik im Laufe der Zeit ändert, keine Gedanken darüber machen muss, wie sich dies auf sein Programm auswirken würde. Ein System kann in mehreren Schichten oder Ebenen abstrahiert werden. Beispielsweise zeigen Abstraktionsschichten auf niedriger Ebene Hardwaredetails, während Abstraktion auf hoher Ebene nur die Geschäftslogik der Entität offenlegt. Der Begriff Abstraktion kann verwendet werden, um sich sowohl auf eine Entität als auch auf einen Prozess zu beziehen, und dies führt zu einiger Verwirrung. Als Prozess bedeutet Abstraktion das Extrahieren wesentlicher Details, während die unwesentlichen Details eines Elements oder einer Gruppe von Elementen ignoriert werden, während Abstraktion als Einheit ein Modell oder eine Ansicht einer Einheit mit nur den wesentlichen Details bedeutet. In Java kann der Programmierer das Schlüsselwort abstract verwenden, um eine Klasse als abstrakte Entität zu deklarieren, die die wesentlichen definierenden Merkmale einer realen Entität darstellt.

Was ist der Unterschied zwischen Kapselung und Abstraktion?

Obwohl Kapselung und Abstraktion sehr verwandte Konzepte sind, die in objektorientierten Programmiersprachen zu finden sind, weisen sie entscheidende Unterschiede auf. Abstraktion ist eine Technik, die uns hilft zu erkennen, was sichtbar und was verborgen sein sollte. Kapselung ist die Technik, Informationen so zu verpacken, dass sie sichtbar machen, was sichtbar sein sollte, und verbergen, was verborgen sein sollte. Mit anderen Worten, Encapsulation kann als ein Schritt über die Abstraktion hinaus identifiziert werden. Während die Abstraktion ein Objekt der realen Welt auf seine wesentlichen definierenden Merkmale reduziert, erweitert die Kapselung diese Idee, indem sie diese Funktionalität dieser Entität modelliert und verknüpft.

Empfohlen: