Der Hauptunterschied zwischen Package und Interface in Java besteht darin, dass Package hilft, die Klassen methodisch zu kategorisieren, um auf sie leicht zuzugreifen und sie zu warten, während Interface hilft, mehrere Vererbungen zu implementieren und Abstraktion zu erreichen.
Java ist eine der beliebtesten Programmiersprachen. Der Hauptvorteil von Java ist, dass es die objektorientierte Programmierung unterstützt. Diese Methodik ermöglicht die Modellierung der Objekte der realen Welt in Software. Eine Klasse ist eine Blaupause zum Erstellen eines Objekts. Jedes Objekt enthält Daten oder Felder zum Beschreiben der Attribute oder der Eigenschaften und Methoden zum Beschreiben von Verh altensweisen. Dieser Artikel beschreibt zwei Konzepte im Zusammenhang mit OOP in Java in Java, nämlich Paket und Schnittstelle.
Was ist ein Paket in Java?
Java bietet eine große Anzahl von Klassen. Es kann schwierig sein, alle Klassen in einem einzigen Ordner aufzubewahren, da er schwer zugänglich ist. Dies kann die Verw altbarkeit des Programms beeinträchtigen. Java verwendet Pakete, um Klassen anzuordnen. Es ist vergleichbar mit einem Ordner. Die Java-API gruppiert Klassen entsprechend der Funktionalität in verschiedene Pakete. Daher enthält jedes Paket einen verwandten Satz von Klassen.
Beispiel für Pakete in Java
Einige Beispielpakete sind wie folgt. Das java.io-Paket enthält die Eingabe- und Ausgabeunterstützungsklassen. Es enthält File, PrintStream, BufferInputStream usw. Das java.net-Paket enthält die netzwerkbezogenen Klassen. Einige Beispiele sind URL, Socket, ServerSocket. Das Paket java.awt enthält alle Klassen, die zum Erstellen grafischer 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 java.io-Paket verwenden möchte, sollte er die import-Anweisung wie folgt 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 {
}
Nach obigem Beispiel ist der Mitarbeiter der Paketname. Die Employee-Klasse ist Teil des Employee-Pakets. Diese Datei wird als Employee.java im Mitarbeiterpaket 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 ist 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 Paket1 importiert. Nach dem Einspielen von Paket 1 hat Klasse B Zugriff auf die Daten und Methoden von Klasse A.
Insgesamt hilft Package in Java dabei, die Projektdateien zu organisieren. Dies ist sehr nützlich, wenn Sie ein großes System entwickeln, da es das systematische Speichern aller Dateien ermöglicht. Darüber hinaus ermöglichen die Java-API-Pakete den Programmierern, bereits vorhandene Klassen zu verwenden.
Was ist Interface in Java?
Manchmal kennt der Programmierer die Definition der Methode nicht. In diesen Situationen kann der Programmierer nur die Methode deklarieren. Eine abstrakte Methode ist eine Methode, die keine Definition hat. Es hat nur die Deklaration. Wenn es mindestens eine abstrakte Methode gibt, wird diese Klasse zu einer abstrakten Klasse. Darüber hinaus kann die abstrakte Klasse sowohl abstrakte Methoden als auch nicht-abstrakte Methoden enth alten. 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. Nehmen Sie mit anderen Worten an, dass die abstrakte Klasse A eine abstrakte Methode namens display hat. Klasse B erweitert Klasse A. Dann soll Klasse B die Methode display definieren.
Beispiel einer Schnittstelle in Java
Nehmen Sie an, dass sowohl A als auch B abstrakte Klassen sind. Wenn Klasse C A und B erweitert, muss diese Klasse C die abstrakten Methoden beider Klassen definieren. Das ist Mehrfachvererbung. Java unterstützt keine Mehrfachvererbung. Um es zu implementieren, sollte der Programmierer Schnittstellen verwenden. Wenn A und B Interfaces sind, dann kann Klasse C sie implementieren. Siehe folgendes Beispiel.
Abbildung 03: Schnittstelle A
Abbildung 04: Schnittstelle B
Schnittstelle A hat die abstrakte Methode display1 und Schnittstelle B hat die abstrakte Methode display2.
Abbildung 05: Klasse C
Klasse C implementiert sowohl A- als auch B-Schnittstellen. Daher sollte es beide Methoden definieren.
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.
Anders als Mehrfachvererbung helfen Schnittstellen, Abstraktion zu erreichen. Es ist ein Hauptkonzept in OOP. Abstraktion ermöglicht es, die Implementierungsdetails zu verbergen und dem Benutzer nur die Funktionalität zu zeigen. Darüber hinaus ermöglicht es die Konzentration auf das, was das Objekt tut, anstatt darauf, wie es gemacht wird. Da ein Interface aus abstrakten Methoden besteht, hilft es, Abstraktion zu archivieren.
Was ist der Unterschied zwischen Paket und Schnittstelle in Java?
Package ist eine Gruppe verwandter Klassen, die Zugriffsschutz und Namensraumverw altung bereitstellen. Interface ist ein Referenztyp ähnlich der Klasse, die eine Sammlung abstrakter Methoden ist. Package hilft dabei, die Klassen methodisch zu kategorisieren, um auf sie einfach zuzugreifen und sie zu warten. Andererseits hilft Interface dabei, Mehrfachvererbungen zu implementieren und Abstraktion zu erreichen. Dies ist der Hauptunterschied zwischen Package und Interface in Java. Außerdem schreibt man ein Paket in Kleinbuchstaben wie java.util, java.awt. Wenn der Name der Schnittstelle Area ist, dann wird er in Interface Area geschrieben.
Zusammenfassung – Paket vs. Schnittstelle in Java
Der Unterschied zwischen Package und Interface in Java besteht darin, dass Package hilft, die Klassen methodisch zu kategorisieren, um auf sie zuzugreifen und sie leicht zu verw alten, während Interface hilft, mehrere Vererbungen zu implementieren und Abstraktion zu erreichen.