Programmieren - alles kontrollieren 4.941 Themen, 20.715 Beiträge

Riesenprobleme mit Java

blueman2 / 4 Antworten / Baumansicht Nickles

Ich versuche mich gerade an Java in der Entwicklungsumgebung "Jedit". Problem dabei ist, dass ich folgende Aufgabe lösen muss:

Programmieren Sie die Java-Applikation TextOut mit den folgenden Mindestanforderungen:

1. TextOut schreibt den Wert der Instanzvariablen text der Klasse Text auf die Console (Bildschirm).
2. Der Wert von text ist eine Zeichenkette von maximal 10 Zeichen.
3. Die Java-Klassen TextOut und Text befinden sich bei der Ausführung im package mit dem Namen de.unilueneburg.prog.zuname, wobei an der Stelle name Ihr Zuname steht.

Also ich könnte eure Hilfe wirklich gebrauchen, ich habe da insgesamt 10 Stunden rumprobiert, aber ich schaffe das nicht.

Bis jetzt sieht meine Überlegung wie folgt aus:
Ich habe die Verzeichnisse für das Paket erstellt
C:\Programme\jEdit\de\unilueneburg\prog\zuname
dadrin befinden sich die Klassen Text.class und TextOut.class

So, die Datei Text.class sieht wie folgt aus:
package de.unilueneburg.prog.zuname; //Dadurch wird angegeben, dass sich die Klasse Text.class in dem Package befinden soll

public class Text { //Klasse Text.class wird definiert

private String text; //Instanzvariable "text" wird als private String definiert

public String getText ( ) //Wenn die Methode getText ausgeführt wird, wird der Wert der Instanzvariablen "text" zurückgegeben. Durch diese Methode können die beiden Klassen Text.class und TextOut.class miteinander kommunizieren.
{
return this.text;
}

}

Die Datei Text.java lässt sich ohne Probleme kompilieren, aber bei Ausführung kommt folgender Fehler:

C:\\Programme\\jEdit\\de\\unilueneburg\\prog\\zuname\\Text.class
java.lang.NoClassDefFoundError: C:\\Programme\\jEdit\\de\\unilueneburg\\prog\\zuname\\Text/class
Exception in thread "main" Process java exited with code 1

Ich habe leider keine Ahnung, was das zu bedeuten hat

So sieht die Datei TextOut aus:

package de.unilueneburg.prog.zuname;
import de.unilueneburg.prog.zuname.Text;

public class TextOut {

public static void Main ( String[] args ) //Main-Methode, da dies die Applikation ist
{
Text objekt1 = new Text(); //Neues Objekt aus der Klasse Text wird definiert
System.out.println(objekt1.getText(0123456789)); //Das Programm soll den wert der Instanzvariablen wiedergeben

}
}

Wenn ich versuche das zu kompilieren, dann kommt folgende Fehlermeldung:

JCompiler> javac C:\\Programme\\jEdit\\de\\unilueneburg\\prog\\zuname\\TextOut.java
C:\\Programme\\jEdit\\de\\unilueneburg\\prog\\zuname\\TextOut.java:2: cannot resolve symbol
symbol : class Text
location: package zuname
import de.unilueneburg.prog.zuname.Text;
^
C:\\Programme\\jEdit\\de\\unilueneburg\\prog\\zuname\\TextOut.java:8: cannot resolve symbol
symbol : class Text
location: class de.unilueneburg.prog.zuname.TextOut
Text objekt1 = new Text();
^
C:\\Programme\\jEdit\\de\\unilueneburg\\prog\\zuname\\TextOut.java:8: cannot resolve symbol
symbol : class Text
location: class de.unilueneburg.prog.zuname.TextOut
Text objekt1 = new Text();
^
3 errors

Problem ist, durch Krankheit (Miniscusriss) konnte ich die ersten Wochen nicht am Studium teilnehmen und bin total hilflos, wäre nett, wenn mir das jmd erklären konnte, was ich falsch gemacht habe.

Danke schonmal an alle

[Diese Nachricht wurde nachträglich bearbeitet.]

[Diese Nachricht wurde nachträglich bearbeitet.]

bei Antwort benachrichtigen
blueman2 Nachtrag zu: „Riesenprobleme mit Java“
Optionen

Bitte kann mir das keiner beantworten? Ich muss das morgen abgegen und habe immer noch keine Ahnung. Und jetzt sagt bitte nicht, dass hast du doch vorher gewußt. Nein, wußte ich nicht, weil ich nicht in der Uni war (Krankheit s.o.)

bei Antwort benachrichtigen
Borlander blueman2 „Bitte kann mir das keiner beantworten? Ich muss das morgen abgegen und habe...“
Optionen

Ganz so wichtig scheint es dann ja doch nicht mehr zu sein? (Sonst hättest Du ja sicher schon eine Rückmeldung gegeben)

bei Antwort benachrichtigen
Borlander blueman2 „Riesenprobleme mit Java“
Optionen
import de.unilueneburg.prog.zuname.Text;
Kommentier mal die Zeile aus, wenn die Dateien schon im selben Verzeichnis liegen ist das nur bedingt sinnvoll...

Die anderen Beiden Fehlermelddungen scheinen mir auf die erste zurückzuführen zu sein (siehe oben)...

Btw.: Nur so ein Tipp: Deine Mitstudenten könnten womöglich besser über die vorangegangegen Lehrinhalte und Schwerpunkt bescheid wissen ;-)


Gruß
Borlander
bei Antwort benachrichtigen
mr.escape blueman2 „Riesenprobleme mit Java“
Optionen
"Text.class" gehört nach "C:\Programme\jEdit\de\unilueneburg\prog\zuname\"
"TextOut.class" nach "C:\Programme\jEdit\" (ich habe das verkürzt probiert, vielleicht reichen ein paar umgebungsvariablen auch).

In "TextOut.java" muss "package de.unilueneburg.prog.zuname;" weg, das ist das eigentliche programm, welches "Text" verwendet und nicht bestandteil von "package de.unilueneburg.prog.zuname".
Der aufruf von "getText(0123456789)" ist nicht definiert, da die definition von "getText" ja "public String getText ( )" lautet, d.h. ohne parameter.

Auf klein- und großschreibung achten (z.b. muss es in "TextOut.java" "main" heißen und nicht "Main")

Es fehlt ein sinnvoller konstruktor für "Text", jetzt wird immer ein leerer string angelegt und es gibt keine möglichkeit zur manipulation (evtl. ist der sourcecode ja nur verkürzt wiedergegeben).

mr.escape
"The man who trades freedom for security does not deserve nor will he ever receive either." - Benjamin Franklin"Wer seine Freiheit aufgibt, um Sicherheit zu erreichen, wird beides verlieren." - Georg Christoph Lichtenberg
bei Antwort benachrichtigen