mikrocontroller.net

Forum: PC-Programmierung Einfache Java-Frage


Autor: Murin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Leute,

ich versuche gerade, eine einfache Klasse in Java zu implementieren.

Daraufhin spuckt mir meine IDE den Fehler aus:
Exception in thread "main" java.lang.Error: Unresolved compilation problem: 
  Syntax error, insert "}" to complete ClassBody




Hier der Code:

public class Auto 
{
  public int farbencode;
  
  int get_farbencode(String y)
  {
    return y;  
  }



  public static void main (String []args)
  {
    Auto BMW = new Auto();
    System.out.println(BMW.get_farbencode("9"));
  }
}


Wo liegt mein Fehler? Kann mir jemand helfen?


Vielen Dank!

Gruß

Autor: Der Andere (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Murin schrieb:
> meine IDE

Welche ist das?

Murin schrieb:
> int get_farbencode(String y)
>   {
>     return y;
>   }

Du returnst einen String in einer Methode die ein int zurückliefert?

Nochmal drüber nachdenken.

Autor: Mark Brandis (markbrandis)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielleicht ist da irgend ein wirres Zeichen, was den Compiler 
durcheinander bringt. Siehe auch:

http://stackoverflow.com/questions/4030032/syntax-...

Mal abgesehen davon: Der Code ergibt so keinen Sinn, insbesondere die 
Methode get_farbencode() nicht.

Autor: Kalter Kaffee (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also mein Compiler (OpenJDK 1.8.0_102) hat an deinem Code aber was ganz 
anderes zu bemängeln:

Auto.java:7: error: incompatible types: String cannot be converted to int
      return y;  
             ^

Wenn ich der Funktion den korrekten Rückgabewert gebe, kompiliert der 
Code bei mir einwandfrei.

Kann es eventuell sein, dass du kein Newline hinter der } am Ende deiner 
Datei hast und deine grottige IDE (welche auch immer das sein mag) damit 
nicht zurecht kommt? Das ist jetzt ehrlich gesagt nur geraten, was 
anderes fällt mir jetzt auf die Schnelle aber auch nicht ein. Kannst du 
den Code denn trotzdem kompilieren?

Autor: Markus L. (rollerblade)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Exception in thread "main" java.lang.Error: Unresolved compilation problem
Das ist kein Compile Error sondern ein Ausführfehler. Die JVM bemängelt 
das Compilat, nicht der Compiler den Source Code.
Ich würde erst mal den Compile Error beheben, bevor ich das Programm 
ausführe. Eclipse zeigt rote Boppel dafür an.

Allerdings müßte da stehen: Type mismatch: cannot convert from String to 
int
statt was von einer fehlenden Klammer.

: Bearbeitet durch User
Autor: PaulBaumannIstBobDerBaumeister (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sollte die Main Funktion nicht außerhalb Klasse stehen ?
Wie ist das in Java ?
So wie es jetzt da ist, wäre die Main innerhalb der Klasse Auto...

Autor: Der Andere (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
PaulBaumannIstBobDerBaumeister schrieb:
> Sollte die Main Funktion nicht außerhalb Klasse stehen ?
> Wie ist das in Java ?

Schau mal da:
http://openbook.rheinwerk-verlag.de/javainsel/

Autor: Mark Brandis (markbrandis)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
PaulBaumannIstBobDerBaumeister schrieb:
> Sollte die Main Funktion nicht außerhalb Klasse stehen ?
> Wie ist das in Java ?
> So wie es jetzt da ist, wäre die Main innerhalb der Klasse Auto...

Es gibt in Java keine Funktionen außerhalb von Klassen. Also muss auch 
main() zu einer Klasse gehören.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.