Biesterfeld: package problem

Beitrag lesen

Hej,

package gui;  
  
import javax.swing.*;  
import java.awt.event.WindowEvent;  
import java.awt.AWTEvent;  
  
public class CognitiveGUI extends JFrame{  
   public CognitiveGUI (){  
      this.addWindowListener(new GUIWindowAdapter());  
   }  
}  
  
package gui;  
  
import java.awt.event.WindowAdapter;  
import java.awt.event.WindowEvent;  
  
public class GUIWindowAdapter extends WindowAdapter{  
   public GUIWindowAdapter(){}  
}

Der Code ist definitv sauber, und Klassen die im selben Paket liegen müssen ihr Paket weder gegenseitig importieren, noch müssen sie vollqualifiziert werden.

Wenn ich die erste zeile in beiden Klassen rausnehme (also package gui;) da gehts....warum?

Wahrscheinlich hängt es dann wirklich mit dem Classpath zusammen, aber die Deklaration zu entfernen kann ja nicht Sinn der Sache sein. Wenn ich das aber recht in Erinnerung habe: Sind die Klassen einmal erfolgreich druchkompiliert benötigt man den Classpath nur noch wenn das Programm auf externe Pakete, die nicht mitgeliefert sind zugreift. Insofern ist das dann auch deinem Prof gegenüber nicht Deine Aufgabe dich drumzukümmern. am saubersten ist in dem Zusammenhang natürlich, deine ganze Software inkl. benutzter (Nicht-JRE-) Pakete in ein Jar zu packen.

So nun habe ich versucht dein Problem nachzuvollziehen, und würde mich auch nicht mehr als blutigen Java-Anfänger bezeichnen, aber daran scheitere ich nun seit 2 Stunden. Mir bleibt dir nur noch ein Tip zu geben, den ich seit meinen ersten Tagen beherzige: Nutze ne IDE die sich um alles kümmert. Ich empfehle Eclipse. Is zwar nicht schön zu wissen, dass mans ohne IDE nicht hinbekommt, is aber auch nicht schön ohne Erfolg nen halbes Wochenende rumzukaspern.

Ansonsten findest Du ja noch vielleicht den entscheidenden Tip wo er mir verwehrt blieb:
Java ist auch eine Insel 4
javabuch
J2SE Documentation

Beste Grüße
Biesterfeld

--
Selfcode:
fo:| br:> n4:? ie:{ mo:} va:} de:] zu:| fl:| ss:| ls:]