Java выдаёт ошибку, потому что переменная b объявлена в классе demo как локальная переменная. Локальные переменные доступны только в том блоке кода, в котором они объявлены. В данном случае переменная b доступна только в методе display класса demo.
Для того чтобы переменная b была доступна вне класса demo, ее необходимо объявить как переменную экземпляра класса demo. Переменные экземпляра класса доступны всем методам класса, включая методы, которые объявлены в других классах.
Для того чтобы исправить ошибку, необходимо изменить объявление переменной b в классе demo следующим образом: int b; После этого переменная b будет доступна в любом методе класса demo, включая метод display.
Вот исправленный код: class demoClass
{
int a = 1;
void func()
{
demo obj = new demo();
obj.display();
}
Ваш код выдаёт ошибку, потому что переменная b объявлена внутри класса demo, который является внутренним классом класса demoClass. Поэтому переменная b доступна только внутри класса demo и не может быть использована вне его. В методе get() класса demoClass вы пытаетесь обратиться к переменной b, которая не видна из-за области видимости. Чтобы исправить эту ошибку, вы можете создать объект класса demo в методе get() и обратиться к переменной b через этот объект. Например: void get()
{
demo obj = new demo();
System.out.println("\nb = " + obj.b);
}