# "Illegal Start of Type" Fehler



## deluxeking (3. Nov 2010)

Hey ich komm i-wie hier nicht weiter unwar arbeiten wir mit bluej und ich soll einen BMI rechner schreiben 
das rechnen war kein problem doch jeztzt soll er noch wenn das ergebniss über 24 ist einen text ausgeben wo drin steht das er abhnehmen soll doch da kommt immer "Illegal start of type" fehler
der fehler ist kommt bei           
if(BMI>=24){
System.out.println("Nimm ab!");
hoffe ihr könnt mir helfen 
danke schön


```
public class BMI
{
    // instance variables - replace the example below with your own
    private double gewicht;
    private double groesse;
    private double BMI;
    
    public void wiegen(double wiegen)
    {
        gewicht = wiegen;
    }

    public void messen(double messen)
    {
        groesse = messen;
    }
    
    public void BMI_rechne()
    {
        BMI = gewicht/(groesse*groesse);
       
    }
    
    public void ausgeben()
    {
         System.out.println(BMI);
    }
    
          if(BMI>=24){
        System.out.println("Nimm ab!");
    }
    else{
            return gewicht/(groesse*groesse)
        }

}
```


----------



## XHelp (3. Nov 2010)

Weil es nicht in der Methode steht... Ab Zeile 29 sieht es generell komisch aus.
Du hast nur 
	
	
	
	





```
void
```
-Methoden, was versuchst du mit dem 
	
	
	
	





```
return
```
 zu machen?


----------



## deluxeking (3. Nov 2010)

weiß nicht hab gedacht es gibt so den wert wieder wennn es nicht übe 24 ist

ok jetzt geht nach dem es in der methode ist doch ist es egal in welcher methode es ist??
ich habs grade in der ausgeben methode


----------



## XHelp (3. Nov 2010)

Dann brauchst du irgendeine Methode die irgendwas zurückgibt (in diesem Fall wohl ein double) und eine Stelle im Programm, wo du es benutzen kannst. Aber beides fehlt bei dir.


----------



## ARadauer (3. Nov 2010)

> ok jetzt geht nach dem es in der methode ist doch ist es egal in welcher methode es ist??


was?


----------



## aschunk (4. Nov 2010)

Hallo,

du hast deinen Code außerhalb einer Methode definiert. 

Es steht da zwar eine geschweifte Klammer, aber  es gibt keiene zugehörige Methode. 

Es fehlt ein Methodenrumpf, in dem du deinen Code definiert hast.


----------



## Andi_CH (4. Nov 2010)

Entferne die Klammer auf Zeile 27 - die ist überflüssig

Bei den Methoden in denen "return" steht darf oben nicht "void" stehen.
In deinem Fall muss dort "double" stehen


----------

