Programmierung Java: Auf der Suche nach Dateien

Sie versuchen, das Java-Programm in der Beispiel-Listing zu kompilieren. Der Java-Compiler stochert durch den Code und stolpert auf einige fehlende Teile. Erstens gibt es dieses Ding ein genannt ArtFrame. Dann haben Sie diese Zeichnung Geschäft. Die Auflistung definiert eine Klasse mit dem Namen ShowFrame, nicht ArtFrame oder Zeichnung. Also wohin geht der Compiler für Informationen über die ArtFrame und Zeichnung Klassen?

Wenn man darüber nachdenkt, kann das Problem entmutigend sein. Sollte gehen der Compiler für alle Dateien über die Festplatte suchen benannt ArtFrame.java oder Drawing.class? Wie groß ist Ihre neue Festplatte? 500GB? 750GB? 6,000,000GB?

Und was Verweise auf Dateien auf Netzlaufwerken? Der Suchraum ist potenziell unbegrenzt. Was ist, wenn der Compiler schließlich all diese Probleme löst? Dann versuchen Sie den Code und die Java Virtual Machine (JVM) beginnt mit der Suche alle immer wieder zu laufen.

Um dieses Problem zu zähmen, definiert Java etwas namens ein CLASSPATH. Das CLASSPATH ist eine Liste der Orte, an denen der Compiler und die JVM für Code aussehen. Es gibt mehrere Möglichkeiten, um eine CLASSPATH zu setzen. Einige Programmierer erstellen Sie eine neue CLASSPATH jedes Mal, wenn sie ein Java-Programm ausführen. Andere schaffen eine systemweite CLASSPATH Variable.

Wenn Sie mit dem vertraut sind PFAD Variable unter Windows und UNIX-Computern, Sie vielleicht schon wissen, wie das Zeug funktioniert.

So oder so, der Compiler und die JVM brauchen eine Liste von Orten für Code zu suchen. Ohne eine solche Liste sind diese Java-Tools nicht überall aussehen. Sie finden keine Klassen wie ArtFrame oder Zeichnung. Sie erhalten ein kann das Symbol nicht finden Nachricht oder eine NoClassDefFoundError Nachricht, und Sie sind sehr unglücklich.

Um dieses Geschäft über Zugriffsmodifikatoren klar, benötigen Sie ein Beispiel. In vielen Java Beispielen ist fast alles öffentlich. Mit den öffentlichen Zugang, müssen Sie sich keine Gedanken darüber machen, wer was nutzen können.

Der Code für dieses erste Beispiel kommt in mehreren Teilen. Der erste Teil, der in der Liste ist, zeigt ein ArtFrame. Auf dem Gesicht des ArtFrame ist ein Zeichnung. Wenn alle die richtigen Teile vorhanden sind, zeigt der Code ausgeführt wird ein Fenster wie in der Abbildung dargestellt.

bild0.jpg
Import com.burdbrain.drawings.Drawing-Import com.burdbrain.frames.ArtFrame-Klasse ShowFrame {public static void main (String args []) {ArtFrame artFrame = new ArtFrame (neue Zeichnung ()) - artFrame.setSize (200, 100) -artFrame.setVisible (true) -}}

Menü