Video: Grundlagen der Programmierung - Java in der Konsole unter Windows kompilieren und ausführen 2024
Sie versuchen das Java-Programm in der Beispielauflistung zu kompilieren. Der Java-Compiler stochert durch den Code und stolpert über einige fehlende Teile. Zuerst gibt es dieses Ding, das ArtFrame genannt wird. Dann haben Sie dieses Zeichengeschäft. Die Auflistung definiert eine Klasse namens ShowFrame, nicht ArtFrame oder Drawing. Also wo geht der Compiler nach Informationen über die ArtFrame- und Drawing-Klassen?
Wenn Sie darüber nachdenken, kann das Problem entmutigend sein. Sollte der Compiler auf der ganzen Festplatte nach Dateien mit dem Namen ArtFrame suchen? Java oder Zeichnen. Klasse? Wie groß ist Ihre neue Festplatte? 500 GB? 750 GB? 6, 000, 000 GB?
Und was ist mit Verweisen auf Dateien auf Netzlaufwerken? Der Suchraum ist potenziell unbegrenzt. Was passiert, wenn der Compiler all diese Probleme löst? Dann versuchen Sie, Ihren Code auszuführen, und die Java Virtual Machine (JVM) beginnt erneut mit der Suche.
Um dieses Problem zu zähmen, definiert Java einen so genannten CLASSPATH. Der CLASSPATH ist eine Liste von Stellen, an denen der Compiler und die JVM Code suchen. Es gibt mehrere Möglichkeiten, einen CLASSPATH festzulegen. Einige Programmierer erstellen jedes Mal einen neuen CLASSPATH, wenn sie ein Java-Programm ausführen. Andere erstellen eine systemweite CLASSPATH-Variable.
Wenn Sie mit der PATH-Variablen auf Windows- und UNIX-Computern vertraut sind, wissen Sie vielleicht bereits, wie das funktioniert.
Auf die eine oder andere Weise benötigen der Compiler und die JVM eine Liste von Orten, an denen nach Code gesucht werden kann. Ohne eine solche Liste sehen diese Java-Tools nirgendwo hin. Sie finden keine Klassen wie ArtFrame oder Drawing. Sie erhalten eine Symbolnachricht oder eine NoClassDefFoundError-Nachricht, und Sie sind sehr unglücklich.
Um dieses Geschäft über Zugangsmodifikatoren klar zu machen, brauchen Sie ein Beispiel. In vielen Java-Beispielen ist fast alles öffentlich. Beim öffentlichen Zugriff müssen Sie sich keine Gedanken darüber machen, wer was verwenden darf.
Der Code für dieses erste Beispiel ist mehrteilig. Der erste Teil, der in der Liste steht, zeigt einen ArtFrame an. Auf dem Gesicht des ArtFrame ist eine Zeichnung. Wenn alle richtigen Teile vorhanden sind, wird beim Ausführen des Codes ein Fenster wie in der Abbildung angezeigt.
Importieren von Daten. Bursche. Zeichnungen. Zeichnung; Importieren von Daten Bursche. Rahmen. ArtFrame; Klasse ShowFrame {public static void main (Zeichenfolge args []) {ArtFrame artFrame = new ArtFrame (new Drawing ()); artFrame. setSize (200, 100); artFrame. setVisible (true);}}