Struktur der .java Datei


Die Struktur einer Java Datei

Bevor wir die schon häufig genutzten Zugriffsmodifizierer durchgehen brauchen wir noch die Struktur einer Java-Datei damit wir die Zugriffsmodifizierer auch sinnvoll nutzen können.

  1. Kommentare können in jeder Zeile im Sourcecode stehen.
  2. Zu welchem Paket die Klassen gehört steht am Anfang, nur Kommentare können davor stehen, es kann nicht mehr als ein Paket sein.
  3. Importe stehen unter der Paket-Anweisung, ihre Anzahl ist beliebig.
  4. Nach den Importen folgt die class/interface/enum-Anweisung.
    1. Variabeln
    2. Konstruktoren
    3. Methoden
package myPaket;
import java.util.Random;
class Zufallszahl{
 static Random randomNumber = new Random();
 public static void main(String[] args){
 System.out.println(randomNumber.nextInt(10));
 }
}

paket

Das Kompilieren der Klasse klappt, aber beim Aufruf gibt es die Fehlermeldung, dass die Hauptklasse Zufallszahl nicht gefunden werden konnte. Wie ist das möglich, wir haben sie doch direkt aufgerufen! Dies liegt an der paket-Anweisung, wir haben Java gesagt, dass sich die Klasse im Paket myPaket befindet und für Java sind dies Pfadangaben, die .class Datei liegt jetzt aber im Verzeichnis c:\javakurs\ und nicht im Verzeichnis myPaket\

Auch wenn wir das Verzeichnis c:\javakurs\myPaket\ erstellen, die class-Datei dort speichern und mit java aufrufen kommt immer noch die gleiche Fehlermeldung, selbst wenn wir die class Datei aus c:\javakurs\ mit „java myPaket\Zufallszahl“ aufrufen erscheint die Fehlermeldung.

Was muss getan werden?

classpath

Der CLASSPATH muss auf c:\javakurs gesetzt werden und die Klasse muss mit dem Paketnamen angesprochen werden. Wo wir dann dabei im Dateisystem stehen ist irrelevant.

classpath1

c:\javakurs>set CLASSPATH=c:\javakurs

c:\javakurs>java myPaket.Zufallszahl

Dafür war es aber nötig, dass das passende Verzeichnis myPaket erstellt wird und die .class-Datei in dieses Verzeichnis verschoben wurde. Dies kann aber auch javac für uns erledigen.

c:\javakurs>javac -d c:\javakurs Zufallszahl.java

Mit dem Argument -d c:\javakurs sagen wir javac, dass unter dem Verzeichnis c:\javakurs die benötigte Verzeichnisstruktur erstellt werden soll. Ohne dieses Argument würde javac die .class-Dateien dort ablegen wo auch die .java-Datei liegt.

Kommentar erstellen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.