@STVDI

Почему один класс не видит переменных другого?

Учу на всем известном сайте JAVA и не понимаю, почему MainActivity не видит переменных из Question.java
Я знаю, что вопрос глупый, но сам не пойму (
W6g4MC0.png
v0lzia7.png
  • Вопрос задан
  • 114 просмотров
Решения вопроса 1
@WaterSmith
Android-разработчик. Java, Kotlin
Потому что:
1. Класс, это не просто файл в котором написан код. Пока вы не создали объект (экземпляр класса), его не существует, как и его переменных (за исключением статических переменных).
2. Чтобы обратиться к переменным другого класса, вы должны обращаться к ним через этот класс, например:
Question question = new Question();
....
public boolean isCorrect(Question quest) {
    return quest.correctAnswer == quest.playerAnswer;
}

3. В третьих, в вашем случае, вы не должны вообще писать как написали вы, или как показал я в п.2 метод isCorrect должен быть методом класса Question и вызываться как: quest.isCorrect()

И если вам показалось, что я ответил лучше чем Сергей Горностаев то вы ошибаетесь. Он полностью прав, читайте учебники, а на том сайте можете закрепить свои знания, хотя даже для этого собственный пет-проект лучше.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
sergey-gornostaev
@sergey-gornostaev Куратор тега Java
Седой и строгий
Потому что вы Java на всем известном сайте учите, а не по учебнику.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы