# Javafehler: illegal start of expression



## ludi (5. Nov 2008)

Hallo Leute, ich hab folgendes Problem. Ich soll ein Programm schreiben, in dem man eine Zahl eingeben kann, die Sekunden darstellt und das Programm rechnet diese Zahl in Tage=d, Stunden=h, Minuten=m und Sekunden=s um und soll sie als 00:00:00:00 ausgeben! Nun komm ich aber einfach nicht weiter, denn in der 8. Zeile zeigt er mir den Fehler "illegal start of expression" an.


```
public class Satellit { {
   
    int d, h, m, s;
    int sekunden=x;
	System.out.println("Wie oft hat der Satellit schon gefunkt?");
	x = eingabe();
	
	
    
    public Satellit(); 
        d=sekunden/86400;
        sekunden%=86400;
        h=sekunden/3600;
        sekunden%=3600;
        m=sekunden/60;
        s=sekunden%60;
        

        System.out.println(d+":"+h+":"+m+":"+s);
    }
    
    
    
    public static void main(String[] args) {
        Satellit blubb = new Satellit();
    }
}
```

Seid bitte nicht böse, das ist mein aller erster Versuch überhaupt, ein Programm zu schreiben in irgend einer Programmiersprache. Aber ich muss da nun durch, wegen dem Studium! 

Wäre toll, könnte mir jemand erklären wo mein Fehler ist! Durch google bin ich nicht schlauer geworden!

MfG ludi


----------



## SlaterB (5. Nov 2008)

Code wie 
> x = eingabe(); 

darf man nicht direkt in die Klasse schreiben, gehört in eine Methode oder einen Konstruktor


----------



## tfa (5. Nov 2008)

Hinter "public Satellit()" gehört kein ";" sondern ein "{".


----------



## Landei (6. Nov 2008)

Bei

```
public class Satellit { {
```
ist ein "{" zuviel (du darfst dir aussuchen, welches)

BTW: Code wird durch [code] erst schön (im Forum)


----------



## Guest (6. Nov 2008)

Vielen Dank erstmal für die Hinweise!



			
				tfa hat gesagt.:
			
		

> Hinter "public Satellit()" gehört kein ";" sondern ein "{".



-> das dachte ich mir auch, doch in der Eingabeaufforderung kreidet er mir das an und sagt: " ";" expeted"

@slaterB: Ich hab jetzt rumprobiert um es irgendwo anders hinzusetzen, aber ich hab Java erst seit 2 Wochen und nicht wirklich ne erklären zu der Programmiersprache bekommen, was genau meinst du? Kannst du es simpler erklären?   :bahnhof: 

MfG ludi


----------



## SlaterB (6. Nov 2008)

so gehts erstmal:


```
public class Satellit
{

    int d, h, m, s;
    int sekunden;


    public Satellit()
    {
        System.out.println("Wie oft hat der Satellit schon gefunkt?");
        int x = eingabe();
        sekunden = x;


        d = sekunden / 86400;
        sekunden %= 86400;
        h = sekunden / 3600;
        sekunden %= 3600;
        m = sekunden / 60;
        s = sekunden % 60;


        System.out.println(d + ":" + h + ":" + m + ":" + s);
    }

    private int eingabe()
    {
        return 42;
    }

    public static void main(String[] args)
    {
        Satellit blubb = new Satellit();
    }
}
```


----------



## Guest (10. Nov 2008)

Vielen dank Leute, mein Übungsleiter hat die Aufgabe zum schluss entschärft und eine Eingabe war nicht nötig! 

MfG ludi


----------

