Unterschied zwischen Paket und Schnittstelle in Java

Das Hauptunterschied zwischen Paket und Schnittstelle in Java ist das Das Paket hilft dabei, die Klassen methodisch zu kategorisieren, um auf sie zuzugreifen und sie einfach zu verwalten, während Interface dazu beiträgt, mehrere Vererbungen zu implementieren und Abstraktion zu erreichen.

Java ist eine der beliebtesten Programmiersprachen. Der Hauptvorteil von Java ist, dass es objektorientierte Programmierung unterstützt. Diese Methode ermöglicht die Modellierung der Objekte der realen Welt in Software. Eine Klasse ist ein Bauplan, um ein Objekt zu erstellen. Jedes Objekt enthält Daten oder Felder zum Beschreiben der Attribute oder der Eigenschaften und Methoden zum Beschreiben von Verhalten. In diesem Artikel werden zwei Konzepte erläutert, die sich auf OOP in Java in Java beziehen, nämlich Paket und Schnittstelle.

INHALT

1. Übersicht und Schlüsseldifferenz
2. Was ist Paket in Java?
3. Was ist Schnittstelle in Java?
4. Side-by-Side-Vergleich - Paket vs. Schnittstelle in Java in Tabellenform
5. Zusammenfassung

Was ist Paket in Java??

Java bietet eine große Anzahl von Klassen. Das Speichern aller Klassen in einem einzigen Ordner kann schwierig sein, da es schwierig ist, darauf zuzugreifen. Dies kann die Programmverwaltung beeinträchtigen. Java verwendet Pakete, um Klassen anzuordnen. Es ähnelt einem Ordner. Java-API gruppiert Klassen in verschiedene Pakete entsprechend der Funktionalität. Daher enthält jedes Paket einen verwandten Satz von Klassen.

Beispiel für Pakete in Java

Einige Beispielpakete lauten wie folgt. Das Paket java.io enthält die Eingabe, Ausgabe unterstützende Klassen. Dazu gehören File, PrintStream, BufferInputStream usw. Das Paket java.net enthält die zum Netzwerk gehörenden Klassen. Einige Beispiele sind URL, Socket, ServerSocket. Das Paket java.awt enthält alle Klassen, die zum Erstellen von grafischen Benutzeroberflächen erforderlich sind. Das sind einige Java-API-Pakete.

Wenn der Programmierer eine bestimmte Klasse im Programm verwenden möchte, sollte er dieses Paket importieren. Wenn der Programmierer die BufferInputStream-Klasse im Paket java.io verwenden möchte, sollte er die import-Anweisung folgendermaßen schreiben.

import java.util.BufferInoutStream;

Die folgende Anweisung importiert alle Klassen im util-Paket.

import java.util. *;

Es ist auch möglich, benutzerdefinierte Pakete zu erstellen.

Paketmitarbeiter;

öffentliche Klasse Angestellter

Gemäß dem obigen Beispiel ist der Mitarbeiter der Paketname. Die Employee-Klasse ist Teil des Employee-Pakets. Diese Datei wird als Employee.java im Employee-Paket gespeichert.

Außerdem ist es möglich, eine öffentliche Klasse von einem Paket in ein anderes zu importieren. Siehe folgendes Beispiel.

Abbildung 01: Klasse A

Abbildung 02: Klasse B

Klasse A befindet sich in Paket 1 und enthält die öffentliche Methode namens display. Klasse B befindet sich in Paket 2 und enthält die Hauptmethode. Obwohl sie in separaten Paketen sind; Klasse B kann ein Objekt der Klasse A erstellen, indem Sie package1 importieren. Nach dem Import von Paket 1 hat die Klasse B Zugriff auf die Daten und Methoden der Klasse A.

Insgesamt hilft Package in Java dabei, die Projektdateien zu organisieren. Dies ist sehr hilfreich bei der Entwicklung großer Systeme, da alle Dateien methodisch gespeichert werden können. Darüber hinaus ermöglichen die Java-API-Pakete den Programmierern die Verwendung bereits vorhandener Klassen.

Was ist Schnittstelle in Java??

Manchmal kennt der Programmierer die Definition der Methode nicht. In dieser Situation kann der Programmierer nur die Methode deklarieren. Eine abstrakte Methode ist eine Methode, die keine Definition hat. Es hat nur die Erklärung. Wenn es mindestens eine abstrakte Methode gibt, wird diese Klasse zu einer abstrakten Klasse. Darüber hinaus kann die abstrakte Klasse sowohl abstrakte als auch nicht abstrakte Methoden enthalten. Der Programmierer kann keine Objekte aus abstrakten Klassen erstellen.

Wenn eine Klasse eine abstrakte Klasse erweitert, sollte die neue Klasse alle abstrakten Methoden in der abstrakten Klasse definieren. Mit anderen Worten, nehmen Sie an, dass die abstrakte Klasse A eine abstrakte Methode hat, die Anzeige genannt wird. Klasse B erweitert Klasse A. Dann sollte Klasse B die Methodendarstellung definieren.

Beispiel für eine Schnittstelle in Java

Nehmen Sie an, dass sowohl A als auch B abstrakte Klassen sind. Wenn die Klasse C A und B erweitert, muss diese Klasse C die abstrakten Methoden beider Klassen definieren. Dies ist Mehrfachvererbung. Java unterstützt keine Mehrfachvererbung. Um dies zu implementieren, sollte der Programmierer Schnittstellen verwenden. Wenn A und B Schnittstellen sind, kann die Klasse C sie implementieren. Siehe folgendes Beispiel.

Abbildung 03: Schnittstelle A

Abbildung 04: Schnittstelle B

Die Schnittstelle A hat die abstrakte Methode von display1 und die Schnittstelle B hat die abstrakte Methode von display2.

Abbildung 05: Klasse C

Klasse C implementiert sowohl A- als auch B-Schnittstellen. Daher sollten beide Methoden definiert werden.

Abbildung 06: Hauptmethode

In der Hauptmethode ist es jetzt möglich, ein Objekt von C zu erstellen und beide Methoden aufzurufen. Ebenso helfen Schnittstellen bei der Implementierung von Mehrfachvererbung in Java.

Neben der Mehrfachvererbung tragen Schnittstellen zur Abstraktion bei. Es ist ein Hauptkonzept in OOP. Die Abstraktion ermöglicht es, die Implementierungsdetails auszublenden und dem Benutzer nur die Funktionalität anzuzeigen. Außerdem können Sie sich auf das konzentrieren, was das Objekt macht, und nicht darauf, wie es ausgeführt wird. Da eine Schnittstelle aus abstrakten Methoden besteht, hilft sie, die Abstraktion zu archivieren.

Was ist der Unterschied zwischen Paket und Schnittstelle in Java??

Package ist eine Gruppe verwandter Klassen, die Zugriffsschutz und Namespace-Management bereitstellen. Die Schnittstelle ist ein Referenztyp, der einer Klasse ähnelt, bei der es sich um eine Sammlung abstrakter Methoden handelt. Das Paket hilft, die Klassen methodisch zu kategorisieren, um auf sie zuzugreifen und sie einfach zu verwalten. Auf der anderen Seite hilft Interface dabei, mehrere Vererbungen zu implementieren und Abstraktion zu erreichen. Dies ist der Hauptunterschied zwischen Package und Interface in Java. Außerdem schreiben Sie ein Paket in Kleinbuchstaben wie java.util, java.awt. Wenn der Name der Schnittstelle Area lautet, wird sie in Interface Area geschrieben.

Zusammenfassung - Package vs Interface in Java

Der Unterschied zwischen Package und Interface in Java besteht darin, dass Package die Klassen methodisch kategorisiert, um auf sie zuzugreifen und sie einfach zu verwalten, während Interface dazu beiträgt, mehrere Vererbungen zu implementieren und Abstraktion zu erzielen.

Referenz:

1.Tutorials Punkt. "Java-Pakete".  Tutorials Punkt, 24. März 2018. Hier verfügbar 
2.Tutorials Point. "Java-Schnittstellen"  Tutorials Punkt, 24. März 2018. Hier verfügbar