Heim  >  Artikel  >  Java  >  Detailliertes Verständnis der Beispiel-Tutorials für Java-Pakete

Detailliertes Verständnis der Beispiel-Tutorials für Java-Pakete

零下一度
零下一度Original
2017-05-20 10:35:521347Durchsuche

Java führt den Paketmechanismus ein, der einen mehrschichtigen Namespace für Klassen bereitstellt, um Probleme wie Klassennamenskonflikte und Klassendateiverwaltung zu lösen.
Java ermöglicht die Unterbringung einer Gruppe funktional verwandter Klassen unter demselben Paket, um eine logische Klassenbibliothekseinheit zu bilden. Wenn ich eine Klasse unter einer bestimmten Paketstruktur platzieren möchte, sollte ich Code im folgenden Format in der ersten Nicht-Kommentarzeile des Java-Quellprogramms platzieren:

package packagename;

Once in the Java Quelldatei Die Verwendung dieser Paketanweisung bedeutet, dass alle in der Quelldatei definierten Klassen zu diesem Paket gehören. Der vollständige Klassenname jeder Klasse in einem Paket sollte eine Kombination aus Paketname und Klassenname sein. Wenn andere die Klasse unter dem Paket verwenden müssen, sollten sie auch den Paketnamen plus den Klassennamen verwenden.

javac -d . Hello.java 与 javac Hello.java 的区别?
package lee;public class Hello{  
public static void main(String[] args)  
{  
System.out.println("Hello World!");  
  }
}

Die Option -d wird ursprünglich verwendet, um den Speicherort der durch Kompilierung generierten Klassendatei festzulegen. Hier wird angegeben, dass die generierte Klassendatei im aktuellen Pfad abgelegt wird. Nach dem Kompilieren mit diesem Befehl wird unter dem aktuellen Pfad ein Ordner mit dem Namen lee generiert und unter diesem Ordner befindet sich eine Datei „Hello.class“.
Wenn Sie direkt mit dem Befehl javac Hello.java kompilieren, wird eine Hello.class-Datei im aktuellen Pfad generiert, der Lee-Ordner wird jedoch nicht generiert.

Müssen sich Klassen im selben Paket im selben Ordner befinden?

muss sich nicht im selben Ordner befinden. Beispielsweise können sich die beiden Klassen lee.Person und lee.PersonTest auf Laufwerk C und die andere auf Laufwerk D befinden, sofern die Umgebungsvariable CLASSPATH diese beiden Pfade enthält.

Wie benenne ich das Paket?

Paketnamen bestehen im Allgemeinen ausschließlich aus Kleinbuchstaben und bestehen aus einem oder mehreren aussagekräftigen Wörtern. Um eine gleichzeitige Duplizierung von Paketnamen und Klassennamen während der Entwicklung zu vermeiden, empfiehlt Oracle, den Internetdomänennamen des Unternehmens in umgekehrter Form als Paketnamen zu verwenden. Wenn der Internetdomänenname beispielsweise Crazyit.org lautet, dann alle Die Klassen des Unternehmens werden im Paket org.crazyit und seinem Unterpaket platziert.
Domänenname verkehrt herum geschrieben.Projektname.Modulname.Komponentenname

Können Klassen im selben Paket aufeinander zugreifen, ohne ein Paketpräfix hinzuzufügen?
Ja.

Können das übergeordnete Paket und das untergeordnete Paket aufeinander zugreifen, ohne ein Paketpräfix hinzuzufügen?
Nein, das Paketpräfix muss hinzugefügt werden.


Schlüsselwort importieren

Wie oben gesehen, ist es immer erforderlich, wenn Sie andere Klassen aus verschiedenen Paketen verwenden müssen. Verwenden Sie die vollständige Funktion Name der Klasse, was eine mühsame Angelegenheit ist. Um die Programmierung zu vereinfachen, hat Java das Schlüsselwort import eingeführt. Das Schlüsselwort import kann nur eine bestimmte Klasse oder alle Klassen unter der angegebenen Paketebene in eine bestimmte Java-Datei importieren. Die Importanweisung sollte nach der Paketanweisung und vor der Klassendefinition stehen. Eine Java-Quelldatei kann nur eine Paketanweisung enthalten, sie kann jedoch mehrere Importanweisungen enthalten, um Klassen unter mehreren Paketebenen zu importieren.

导入单个类:
import package.subpackage...ClassName;
导入全部类:
import package.subpackage...*;

Das (*) oben kann nur Klassen darstellen, keine Pakete.

Häufig verwendete Pakete von Java

Die Kernklassen von Java werden unter dem Java-Paket und seinen Unterpaketen platziert und viele Klassen erweitert von Java werden unter dem Javax-Paket und seinen Unterpaketen platziert. Diese Dienstprogrammklassen sind die oben genannten API (Anwendung Schnittstelle ). Oracle platziert sie entsprechend den Funktionen dieser Klassen in verschiedenen Paketen. Die folgenden Pakete sind häufig verwendete Pakete in Java.

java.lang: Dieses Paket enthält die Kernklassen der Java-Sprache, wie z. B. Sting-, Math-, System- und Tread-Klassen. Es ist nicht erforderlich, die Importanweisung zu verwenden, um die Klassen in diesem Paket zu verwenden. Das System importiert automatisch alle Klassen unter dem Paket.
java.util: Dieses Paket enthält eine große Anzahl von Java-Tool-Klassen/-Schnittstellen und Sammlungs-Framework-Klassen/-Schnittstellen, wie z. B. Arrays, List, Set usw.
java.net: Dieses Paket enthält einige Klassen/Schnittstellen im Zusammenhang mit der Java-Netzwerkprogrammierung.
java.io: Dieses Paket enthält einige Java-Eingabe-/Ausgabe-bezogene Klassen/Schnittstellen.
java.text: Dieses Paket enthält einige Klassen im Zusammenhang mit der Java-Formatierung.
java.sql: Dieses Paket enthält einige Java-Klassen/Schnittstellen im Zusammenhang mit der JDBC-Datenbankprogrammierung.
java.awt: Dieses Paket enthält verwandte Klassen/Schnittstellen der Abstract Window Toolkits. Diese Klassen werden hauptsächlich zum Erstellen von Programmen für grafische Benutzeroberflächen (GUI) verwendet.
java.swing: Dieses Paket enthält Klassen/Schnittstellen im Zusammenhang mit der grafischen Benutzeroberflächenprogrammierung von Swing. Diese Klassen können zum Erstellen plattformunabhängiger CUI-Programme verwendet werden.

[Verwandte Empfehlungen]

1. Muss die Benennungsregeln für Java-Pakete beherrschen

2.Java-Softwareentwickler lernen PHP -15 Namespace in PHP und Paket in Java

3. So installieren und verwenden Sie Package Control in Sublime Text 2/3

4 zu dem Problem, dass die grafische Idee keine neue Java-Klasse und kein neues Paket erstellen kann

Das obige ist der detaillierte Inhalt vonDetailliertes Verständnis der Beispiel-Tutorials für Java-Pakete. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn