На строке 1 недоступны переменные count и sum, так как они объявлены внутри метода searchBook и не видны внутри внутреннего класса Enumerator․ Это связано с областью видимости переменных в языке Java․ Внутренний класс Enumerator может иметь доступ только к финальным (final) переменным метода, которые передаются в него как параметры․ В данном случае, переменные count и sum не передаются в метод Enumerator․iterate, поэтому они не доступны на строке 1 в этом методе․
[Вопрос решен] Изучите код, в котором у метода searchBook() есть внутренний класс...
Изучите код, в котором у метода searchBook() есть внутренний класс Enumerator. Какая из переменных недоступна на строке 1?
public class BookStore
{
private static final int taxId = 300000;
private String name;
public String searchBook( final String criteria )
{
int count = 0;
int sum = 0;
sum ;
class Enumerator
{
String iterate( int k)
{
//1
return “”;
}
// lots of code…..
}
// lots of code…..
return “”;
}
}
Какая из переменных недоступна на строке 1?
(1) Смотреть решение