Java 6. Professionell einsteigen

Java 6. Professionell einsteigen

von: Dirk Frischalowski, Ulrike Böttcher

entwickler.press, 2007

ISBN: 9783939084198

Sprache: Deutsch

411 Seiten, Download: 11311 KB

 
Format:  PDF, auch als Online-Lesen

geeignet für: Apple iPad, Android Tablet PC's Online-Lesen PC, MAC, Laptop


 

eBook anfordern

Mehr zum Inhalt

Java 6. Professionell einsteigen



5 Packages (S. 157)

5.1 Einführung

Da sehr viele Entwickler Java-Klassen bzw. -Anwendungen erzeugen, muss sichergestellt werden, dass sich die verwendeten Namen nicht überschneiden. Setzen Sie beispielsweise zwei Bibliotheken ein, welche Klassen mit gleichen Namen besitzen, liefert der Compiler eine Fehlermeldung. Für den Compiler muss die Klasse immer eindeutig identifizierbar sein. Java verwaltet so genannte Kompiliereinheiten (Compilation Units) über Packages. Kompiliereinheiten sind Klassen, Interfaces und Aufzählungen. Der Name eines Packages entspricht dabei in der Regel einem bestimmten Verzeichnis auf einem Datenträger. In diesem Verzeichnis befinden sich alle Klassen, Interfaces und Aufzählungen, die zu diesem Package gehören.

Im Klassenpfad sucht Java nach Klassen, Interfaces und Aufzählungen. Der Klassenpfad enthält hierfür Verzeichnisangaben und/oder Pfade zu Archiven (d.h. einzelnen JARDateien). Ausgehend von diesen Verzeichnissen oder innerhalb des Archivs wird die Verzeichnisstruktur des Packages bestimmt. Im Package werden wiederum die Klassen und anderen Typen gefunden.

Beispiel
Der Klassenpfad enthält das Verzeichnis C:MeineBibos sowie das Archiv C:MeineArchive Hilfsklassen.jar. Sucht der Compiler nach der Klasse de.jse6buch.kap05.PackageTest, wird der Pfad zu den Bibliotheken um den relativen Pfad ..dejse6buchkap05 erweitert. Dieser Pfad entspricht dabei dem Package-Namen. Im Pfad C:MeineBibosdejse6buch kap05 wird jetzt nach der Klasse PackageTest gesucht, die sich in der Datei Package- Test.class befindet. Wird sie hier nicht gefunden, prüft der Compiler das Archiv nach dem entsprechenden Eintrag. Das Archiv muss deshalb auch die Pfadangaben der Dateien beinhalten.

Hinweis
Grundsätzlich hängt es vom benutzten Betriebssystem ab, wie ein Package-Name interpretiert wird. Ein Package kann auch einer Tabelle oder einer Datenbank entsprechen. Im Folgenden wird immer davon ausgegangen, dass Packages auf Verzeichnisse abgebildet werden.

5.1.1 Package-Hierarchie

Für eine sinnvolle und eindeutige Aufteilung der Klassen auf Packages reicht eine Ebene nicht aus. Sie können deshalb unter einem Package ein weiteres Package definieren. Diese Verschachtelung lässt sich mehrfach durchführen. Verschachtelte Packages werden auch als Unter- oder Subpackages bezeichnet. Java gruppiert zusammengehörige Typen (Klassen, Interfaces, Aufzählungen) in Package-Hierarchien. So finden Sie im Package java.lang die Standardklassen und unter dem Package java.util zahlreiche Hilfsklassen. Die einzelnen Klassen werden aber nicht einzeln auf dem Datenträger verwaltet, sondern in einem Archiv zusammengefasst. Dies ist platzsparender und erlaubt einen einfacheren Zugriff. Das Archiv unter [InstallJDK] jrelibt.jar fasst die meisten Klassen, Interfaces und Aufzählungen des Java-Laufzeitsystems zusammen.

Syntax
Package-Namen entsprechen der Verzeichnisstruktur, unter der eine bestimmte Klasse etc. abgelegt ist. Dabei werden statt der Verzeichnistrenner wie / oder Punkte zum Trennen der Verzeichnisse verwendet. Die Namen der Verzeichnisse und damit auch der des Packages werden standardmäßig klein geschrieben, in jedem Fall wird bei beiden die Groß-/Kleinschreibung beachtet. Für die Zuordnung einer Datei zu einem Package benutzen Sie die package-Anweisung. Sie muss immer am Anfang der Datei stehen. Nur Kommentare sind vor dieser Anweisung erlaubt. Nach der package-Anweisung folgt der Name des Packages.

Kategorien

Service

Info/Kontakt