Я пытаюсь понять, почему я получаю сообщение об ошибке, когда пытаюсь вызвать метод объектом, находясь в том же классе.Может ли метод вызываться объектом внутри одного класса?
Мой синтаксис выглядит правильно. Я понимаю, что локальные переменные внутри метода неинициализированы и хотели посмотреть, сможет ли компилятор выбрать это.
Моя проблема, однако, я получаю глупую ошибку от компилятора, когда я пытаюсь вызвать метод на объекте того же класса внутри класса.
class Wool {
public static void main (String [] args) {
int add() {
int x;
int a = x + 3;
return a;
}
Wool w = new Wool();
System.out.print("something here " + w.add());
} // end main
} // end class
Там ошибка, которую я получаю от компилятора:
c Wool.java
Wool.java:5: ';' expected
int add() {
^
я могу сделать выше штраф, если объект типа шерсти конкретизируется в другом классе, и объект не имеет проблем в вызывая метод, чтобы показать мне ошибку компиляции, чтобы локальные переменные нуждались в значении в этом методе.
Я просто не понимаю, почему я не могу сделать это в одном классе. И если это возможно, пожалуйста, можете ли вы просветить меня.
Помощь была бы чрезвычайно благодарна.
спасибо.
Почему вы пытаетесь определить метод внутри другого метода? –
Возможный дубликат [В Java, может ли объявление метода/конструктора появляться внутри другого объявления метода/конструктора?] (Http: // stackoverflow.com/questions/4735922/in-java-can-a-method-constructor-declaration-seem-inside-another-method-const) –
java dosn't поддерживает определение объявления метода внутри метода. –