main Methode und String

NC10

Mitglied
Kurze einfache vielleicht blöde Frage: Warum lösst sich folgender Code nicht ausführen?

public class Text
{
public static void main (String[] args) {
String text="ABC"; //*1*
System.out.println(text.length());
}
}

da kommt immmer folgende Fehlermeldung: compilieren mit javac Text.java funktioniert noch!

Caused by: java.lang.ClassNotFoundException: Text.java
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
Could not find the main class: Text.java. Program will exit.

Vielen Dank für Hilfe!!!
 
S

SlaterB

Gast
> java Test
statt
> java Test.java
eintippen

wenn überhaupt ginge es ja nun um die .class-Datei, .java hat überhaupt nix mehr zu melden,
aber .class muss man weglassen, machen viele falsch
 

Swoop

Gesperrter Benutzer
Funktioniert bei mir ohne probleme ...

kann es sein das deine Klasse umbenannt hast und deshalb die Exception kommt ??
 

NC10

Mitglied
Hallo,

also ich hätte da nochmal ne Fragen: Bei meiner Frage ging es um eine Übungsaufgabe, die folgendermaßen lautet:
Gegeben ist folgender Code:
Code:
public class Text {
public static void main(String[] args) {
String text;
// *1*
text = null;
// *2*
text = "";
// *3*
text = "ABC";
// *4*
}
}

Frage ist: welchen Wert der Ausdruck text.length() an den Stellen der Kommentare hat.
Ich wollte mir helfen in dem ich an den Stellen System.out.println(text.length()); eingefügt habe, um mir den Wert auszugeben, und dann zu erklären warum.
Also so:
Code:
public class Text {
public static void main(String[] args) {
String text;
System.out.println(text.length());// *1*
text = null;
System.out.println(text.length());// *2*
text = "";
System.out.println(text.length());// *3*
text = "ABC";
System.out.println(text.length());// *4*
}
}

Das ist ja so nicht möglich: Fehlermeldung dass text bereits definiert wurde. Das liegt wohl daran, dass man Variablen vom Typ String ja nicht verändern kann, oder? Daher hab ich folgendes versucht:
Code:
public class Text {
  public static void main(String[] args) {
  String text1;
  System.out.println(text1.length());// *1*
  text2 = null;
  System.out.println(text2.length());// *2*
  text3 = ""; 
  System.out.println(text3.length());// *3*
  text4 = "ABC";
  System.out.println(text4.length());// *4*
  }
}

Das geht nicht, weil text1 keine Initialisierung hat. Wie kann ich dann den Wert von text1 an der Stelle *1* herausfinden oder erklären?
Selbiges mit text2: Java sagt hier:Exception Nullpointer, Wert?
zu *3* die Länge eines leeren Strings dürfte 0 sein.
zu *4* die Länge des Strings "ABC" dürfte 3 sein da sich 3 chars darin befinden.

Kann mir da jemand helfen?

Dankeschön für die super HILFE! NC10
 

NC10

Mitglied
ok danke, aber ein String ist doch ein Objekt. Müsste String text; nur als Variablendeklaration ohne Wertzuweisung nicht den Standartwert null, die leere Referenz haben? ahso also null ist nur eine Referenz sprich eine leere Speicheradresse und kein WErt?!?! Richtig, ja nein?
Und text kann ich dann nicht einfach eine leere Referenz zuweisen was *2* erklären würde?!?!
 
S

SlaterB

Gast
ok danke, aber ein String ist doch ein Objekt.
kann man so nicht wiedersprechen, falls du wirklich von einem String-Objekt und nicht einer String-Variablen sprichst

Müsste String text; nur als Variablendeklaration ohne Wertzuweisung nicht den Standartwert null, die leere Referenz haben?
bei Klassenattributen ist das so, bei lokalen Variablen nicht, warum auch immer,
aber einfach selber = null dranschreiben, wenn du das möchtest
ahso also null ist nur eine Referenz sprich eine leere Speicheradresse und kein WErt?!?! Richtig, ja nein?
ja, wobei man das oft auch als Wert bezeichnet,
was ein Wert ist oder nicht, ist eine philosophische Frage, wenn du keine Definition zugrunde legst
Und text kann ich dann nicht einfach eine leere Referenz zuweisen was *2* erklären würde?!?!
klar kann man das zuweisen und 2 ist dann die Folge, keine Erklärung dafür, dass man es nicht machen kann

was du nicht machen kannst, ist von String null eine Methode aufzurufen
 

NC10

Mitglied
Danke für die Antwort!
Ok ich habe:
Code:
public class Text {
public static void main(String[] args) {
String text;
// *1*
text = null;
// *2*
text = "";
// *3*
text = "ABC";
// *4*
}
}

Was würdet ihr nun sagen? Welchen Wert hat text.length; an der Stelle *1* und
an der Stelle *2*?
Meine Antwort wäre: String text an der Stelle *1* ist nur eine Generierung eines OBjekts vom Typ String. Der Variablen wird kein Wert zugewiesen. Was heißt, dass text.length keinen Wert ergibt und somit Compilerfehler.
Was sagt ihr zu der Antwort? Fraglich ist für mich was der Wert von String text ist? Null ja anscheinend nicht weil es sich hier nicht um eine Klassenvariable sondern um eine lokale Variable handelt. Was ist der Wert von String text;?
Meine Antwort zu *2*: hier wird text null zugewiesen, sprich eine leere Referenz. Das heißt nur eine leere Speicheradresse und kein richtiger Wert, von dem man die Länge berechnen kann. Somit wiederum ein Compilerfehler.
Was sagt ihr zu dieser Antwort?

Vielen Dank!
 
S

SlaterB

Gast
bei 2 gibts keinen Compilerfehler sondern eine Exception zur Laufzeit,
den Wert für 1 kann ich dir auch nicht nennen, man sagt da (wie die Compilerfehlermeldung) dass die Variable nicht initialisiert ist,
sonst ok

edit:
> nur eine Generierung eines OBjekts vom Typ String

einer Variablen, keines Objektes, und dann auch Deklaration, nicht Generierung
 
Zuletzt bearbeitet von einem Moderator:
Ähnliche Java Themen
  Titel Forum Antworten Datum
M String außerhalb der main-Methode Java Basics - Anfänger-Themen 4
S Main Methode String... args Java Basics - Anfänger-Themen 2
P Main Methode scheint Constructor aufzurufen, ohne dass es so gecoded ist Java Basics - Anfänger-Themen 2
N Throw an Main Methode übergeben Java Basics - Anfänger-Themen 7
J Die statische Main-Methode ändert Instanzvariable? Java Basics - Anfänger-Themen 10
D Array in Main Methode aus anderer Klasse aufrufen Java Basics - Anfänger-Themen 3
G jButton führt Main Methode nicht richtig aus Java Basics - Anfänger-Themen 3
G Main Methode wird beim ersten Aufruf nicht richtig ausgeführt Java Basics - Anfänger-Themen 1
C60 Methoden Main-Methode erkennt meine Arrays nicht. Java Basics - Anfänger-Themen 7
C Kein Zugriff auf Klassenmethoden in Main Methode Java Basics - Anfänger-Themen 23
N Wozu nutzt man in der Main Methode das args Array? Java Basics - Anfänger-Themen 10
H Warum kann man keine Parameter in die main-Methode packen? Java Basics - Anfänger-Themen 4
KogoroMori21 Methode in der main ausgeben Java Basics - Anfänger-Themen 2
s_1895 zu viele Zeilen in der Main Methode Java Basics - Anfänger-Themen 4
B Wie kann ich etwas vor der Main-Methode ausführen? Java Basics - Anfänger-Themen 21
K Übergabe von Werten (zweidimensionales Array) aus einer Methode an zweidimensionales Array in main() Java Basics - Anfänger-Themen 3
G main Methode Java Basics - Anfänger-Themen 5
1 main-Methode erweitern, Nachfrage nach wiedeholung Java Basics - Anfänger-Themen 2
J main methode Java Basics - Anfänger-Themen 1
E Was kommt in ein Objekt und was in die Main Methode? Java Basics - Anfänger-Themen 8
D java main methode kann nicht kompiliert werden (Erstellen eines Objekts) Java Basics - Anfänger-Themen 6
scratchy1 ArrayOutOfBoundException in main-Methode Java Basics - Anfänger-Themen 17
P Parameterübergabe, von Methode zu Methode zu main Java Basics - Anfänger-Themen 4
D Compiler-Fehler Aufrufen einer Methode von Main Java Basics - Anfänger-Themen 4
M Methode mit Array als Parameter an Main übergeben Java Basics - Anfänger-Themen 1
W Exception in Main abfangen oder in der Methode? Java Basics - Anfänger-Themen 10
J Timer bauen, Main Methode immer wieder neu starten Java Basics - Anfänger-Themen 13
M Maven Main-Methode Interface und Klasse Java Basics - Anfänger-Themen 2
G Instanzvariable in main-Methode verboten? Java Basics - Anfänger-Themen 3
M Objekt starten von der main-Methode Java Basics - Anfänger-Themen 1
A Methode aufrufen in main-Methode Java Basics - Anfänger-Themen 5
AssELAss Klassen Java Klasse in main-methode ausführen Java Basics - Anfänger-Themen 7
R Methoden Nicht statische Methode aus Main aufrufen Java Basics - Anfänger-Themen 2
J Methode in main-Methode aufrufen Java Basics - Anfänger-Themen 5
M Klassen Main Methode in einer anderen Klasse aufrufen Java Basics - Anfänger-Themen 13
TheMenox Methoden Auslagerung von Code aus der "main" Methode sinnvoll? Java Basics - Anfänger-Themen 70
S Methode auf Main zugreifen Java Basics - Anfänger-Themen 5
S Methoden main-Methode integrieren Java Basics - Anfänger-Themen 2
K Methoden Programm ohne Main Methode starten Java Basics - Anfänger-Themen 2
F Erste Schritte (Gelöst) Anfängerfrage Arraylist ausserhalb der Main Methode Java Basics - Anfänger-Themen 2
N Variablen Variable in Main deklarieren und in anderer Methode nutzen Java Basics - Anfänger-Themen 12
T Mehrere Methoden in der main-Methode verknüpfen und aufeinander anwenden Java Basics - Anfänger-Themen 2
A Methoden Zugriff auf eingelesene Variablen in der main Methode (ohne Änderung der Parameterliste) Java Basics - Anfänger-Themen 4
U Umschreiben ohne main methode ;-) Java Basics - Anfänger-Themen 8
A Fehlermeldung beim aufruf der main Methode Java Basics - Anfänger-Themen 17
F Threads Variable aus einem Thread in main Methode? Java Basics - Anfänger-Themen 9
B Java Programm ohne statische Main Methode aufrufen Java Basics - Anfänger-Themen 5
V Arrays aus eigener Klasse erstellt, zuweisung aber spuckt Fehler in verbindung mit main Methode aus. Java Basics - Anfänger-Themen 3
M Exception von main Methode weiterwerfen? Java Basics - Anfänger-Themen 1
D main-Methode und Tread parallel ausführen Java Basics - Anfänger-Themen 0
A Was stimmt mit Main-Methode nicht? Java Basics - Anfänger-Themen 4
T In main-Methode Parameter übergeben Java Basics - Anfänger-Themen 3
R Methoden Main-Methode verhält sich in .jar anders als in Eclipse Java Basics - Anfänger-Themen 2
P Verständnisproblem main Methode Java Basics - Anfänger-Themen 9
O Main-Methode static modifier umgehen Java Basics - Anfänger-Themen 10
P Verwirrung mit AWT Frame und main Methode Java Basics - Anfänger-Themen 19
T Threads Neuen Thread nicht aus main-Methode starten Java Basics - Anfänger-Themen 3
iB0T Main Methode Variablen übergeben Java Basics - Anfänger-Themen 6
H Applet - main()-Methode Java Basics - Anfänger-Themen 4
S Constructor und Main Methode Java Basics - Anfänger-Themen 3
N Methoden Main Methode Java Basics - Anfänger-Themen 7
B main methode ohne public Java Basics - Anfänger-Themen 5
E Methoden Methode in main-Methode ausführen Java Basics - Anfänger-Themen 3
R Fragen über Fragen, main-Methode und Co. Java Basics - Anfänger-Themen 32
1 Werte zur main Methode übergeben Java Basics - Anfänger-Themen 5
J Main-Methode Java Basics - Anfänger-Themen 14
B Erste Schritte ergebnis der funktion in der main-methode ausgeben Java Basics - Anfänger-Themen 7
T Klasse in Main Methode Java Basics - Anfänger-Themen 3
C Main Methode überschreibt Werte Java Basics - Anfänger-Themen 3
D Von einer Methode auf eine lokale Variable in der Main zugreifen? Java Basics - Anfänger-Themen 15
M andere Main Methode Java Basics - Anfänger-Themen 5
I Nur main-Methode über Konsole aufrufbar? Java Basics - Anfänger-Themen 3
J Programm in main Methode testen Java Basics - Anfänger-Themen 29
D Jar klappt nicht trotz main Methode Java Basics - Anfänger-Themen 19
D main Methode? Java Basics - Anfänger-Themen 19
M Main methode innerhalb von Java aufrufen Java Basics - Anfänger-Themen 11
M Frage zu main Methode Java Basics - Anfänger-Themen 11
B Problem bei dem erstellen einer Main Methode Java Basics - Anfänger-Themen 4
S Main-Methode aus anderer Klasse heraus starten Java Basics - Anfänger-Themen 8
X Array von Methode in Main übergeben? Java Basics - Anfänger-Themen 11
G Immer mehr Threads beim Selbstaufruf der main-Methode Java Basics - Anfänger-Themen 3
K Variable von main- Methode in Untermethode "holen" Java Basics - Anfänger-Themen 3
A main Variable in Methode ansprechen Java Basics - Anfänger-Themen 4
T Datentypen Verständnisproblem mit main Methode Java Basics - Anfänger-Themen 3
Y Ergebnis einer Berechnung an die Main Methode übergeben Java Basics - Anfänger-Themen 11
W Parameter für die main-Methode Java Basics - Anfänger-Themen 7
C Konstanten zu einfachen Berechnungen unterhalb Main Methode Java Basics - Anfänger-Themen 19
J arraylist ausserhalb der main Methode zugänglich machen (Elemente adden und updaten) Java Basics - Anfänger-Themen 4
A Fehlende Main-Methode? Java Basics - Anfänger-Themen 12
Z Funktionsaufruf in der main-Methode Java Basics - Anfänger-Themen 12
S Problem mit main Methode Java Basics - Anfänger-Themen 2
V Wofür steht das args / arguments in Main Methode Java Basics - Anfänger-Themen 4
I Fehlendes Argument in Main-Methode abfangen Java Basics - Anfänger-Themen 15
S main-Methode gibt unerwartetes Ergebnis aus Java Basics - Anfänger-Themen 4
M Parameter an main()-Methode Java Basics - Anfänger-Themen 6
M Unterschied main-Methode und Konstruktor Java Basics - Anfänger-Themen 13
Spin class und main Methode Java Basics - Anfänger-Themen 6
J unterprogramm in main-methode einbinden Java Basics - Anfänger-Themen 9
A Klassen: Ein Testprogramm mit der main Methode schreiben? Java Basics - Anfänger-Themen 3
B Wohin mit der Main-Methode? HILFE! ("Exception in thr.) Java Basics - Anfänger-Themen 19

Ähnliche Java Themen

Neue Themen


Oben