public class Solution {
public static void main(String[] args) {
printIdea(new Idea());
}
public static void printIdea(Idea idea){
Idea.getDescription();
}
public static class Idea {
public String getDescription(){
return "str";
}
}
}
CatDaVinci
13 уровень
Не могу понять, зачем в main'е передаётся новый объект в качестве параметра и почему с моим кодом задача не работает
Решен
Комментарии (4)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
CatDaVinci
19 августа 2019, 13:02решение
Разобрался с решением. Суть оказалась в вызове нестатического метода из статического. А это возможно только при наличии экземпляра класса, в котором содержится статический метод.
+2
АлександрExpert
19 августа 2019, 12:31
А у тебя есть не новый объект класса идея?
Потому что твоя программа ничего не выводит на экран.
0
CatDaVinci
19 августа 2019, 12:35
Но ведь main вызывает printIdea, а printIdea в свою очередь вызывает getDescription с return "str". Почему "str" не выводится на экран. Я думаю, что я неправильно вызвал методы, а что именно неправильно, понять не могу
0
АлександрExpert
19 августа 2019, 12:38
Вывод в консоль выглядит как System.out.println() или .print(). У тебя этого нет ни в 1 из методов.
В методел printIdea вызываешь этот метод, а в качестве аргумента, то что у тебя там сейчас.
+1