2015-09-18 5 views
-3

Я новичок в концепциях ООП, и получаю сообщение об ошибке: не могу найти символ. Также во время компиляции я получаю 2 ошибки:Невозможно найти символ ... - Java

Error:(9, 35) java: <identifier> expected 
Error:(9, 36) java: illegal start of type 

Любая помощь была бы принята с благодарностью. Вот мои два класса:

package com.company; 

public class Main { 

    public static void main(String[] args) { 

    } 

    TestClass waterBottle = new waterBottle(); 
    waterBottle.bottleFill(5); 
} 

package com.company; 

public class TestClass { 

    TestClass() { } 

    public void waterBottleFill(int y) { 
     int bottleFill = y; 
     System.out.println("Fill level is at:" + bottleFill); 
    } 

    public void waterBottleRefill(int x) { 
     int refill = x; 
    } 
} 
+0

Что такое ваше имя файла? Ява установлена ​​в вашей системе. Я считаю, что вы получаете ошибку в CLI. – Manwal

+0

оба класса находятся в разных java-файлах? –

ответ

1

Ваш код

TestClass waterBottle = new TestClass(); 
waterBottle.bottleFill(5); 

на самом деле находится в определении класса.

Переместить этот код в ваш метод main:

public class Main { 

    public static void main(String[] args) { 
     TestClass waterBottle = new waterBottle(); 
     waterBottle.bottleFill(5); 
    } 
} 

Эта проблема становится очевидной и простой при форматировании код правильно - с identation, вертикальной и горизонтальным расстоянием. Я отредактировал ваш вопрос, так что теперь он отформатирован правильно. Взгляните и заметьте, насколько это читаемо сейчас.

Еще одна проблема заключается в создании объекта класса. Вы указали неверное имя на линии new waterBottle(). new должен следовать собственным именем класса:

TestClass waterBottle = new TestClass(); 
0
package com.company; 

public class Main { 

public static void main(String[] args) { 


    //TestClass waterBottle = new waterBottle(); // what is waterbottle.. this will give you can not find symbol` 
    TestClass waterBottle = new TestClass();//should be this 


     waterBottle.bottleFill(5); 
}// main method ends 

}// class ends 




package com.company; 

public class TestClass { 

TestClass(){} 

public void waterBottleFill(int y){ 
    int bottleFill = y; 
    System.out.println("Fill level is at:"+ bottleFill); 

} 
public void waterBottleRefill(int x){ 
    int refill = x; 
} 


} 
Смежные вопросы