Я не против, если я не понимаю, но я хочу знать, почему это происходит:Недействительные методы не могут вернуть значение метода void?
void something(String a) {
return hi();
}
void hi() {
return;
}
Странным здесь является то, что hi()
также имеет тип возвращаемого void
. Я получаю ошибку синтаксиса в моем IDE:
Void methods cannot return a value
Кроме того, код не компилируется:
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
Void methods cannot return a value
at Resources.setSystemProperties(Resources.java:33)
at Resources.main(Resources.java:49)
Я бы ожидать, что это будет происходит:
hi() -> return nothing
return [nothing] -> hi() is nothing
Таким образом, в end, он ничего не возвращает, как и метод void
.
Почему такое поведение происходит? И почему код не компилируется, когда возвращается результат метода void?
Ответ: методы 'void' не могут вернуть значение *. Так просто. –
И 'a.notify()' is 'void' ... Итак, почему я не могу вернуть результат? У меня есть три ответа, но ни один из них, похоже, не пытался ответить на мой вопрос. – Zizouz212
Существует разница между 'return;' и 'return;'. Наверное, это вас смущает. –