Вопрос пользователя Vladislav Nikolaenko в уроке «Модуль 0. Урок 1. Создание и запуск потоков.», курс «Java: Многопоточность»

Vladislav Nikolaenko

Доброго времени суток. Не могу понять, что не так с вызовом getResult() Постоянно завершается с ошибкой:

./src/victims/RunnableCaller.java:10: error: cannot find symbol
        threadRunnable.getResult();
                      ^
  symbol:   method getResult()
  location: variable threadRunnable of type Thread
./src/victims/ThreadCaller.java:10: error: cannot find symbol
        thread.getResult();
              ^
  symbol:   method getResult()
  location: variable thread of type Thread

Гуглёж выдал, что компилятор меня не понимает, но как ссылаться на метод правильно, почему-то не доходит вот уже два часа.. -_- ревью: https://ru.hexlet.io/code_reviews/378024

4 0

Vladislav Nikolaenko

Пройдясь немного по теории, понимаю, что я выходит обращаюсь к треду, а не к методу. Хотя он переопределён. Или и здесь концептуальная ошибка понимания?

0

Сергей Алексеенко

Добрый вечер.

Тут нужно вспомнить теорию из курса 101.

Если ссылка имеет тип предка, но ссылается на потомка, видит ли она все методы и поля объекта?

0

Vladislav Nikolaenko

После этого вопроса, получилось найти решение https://ru.hexlet.io/code_reviews/378024 Но понять его не получилось.. Понял я то, что именно от меня нужно было в решении, ибо это конкретно прописано: и вернет объект класса SumThread. Но не вышло понять, почему в решении учителя, в ThreadCaller сразу выполняется инициализация объекта SumThread с одноимённым типом, а не с типом Thread, хотя в примере на видео второй вариант. Предполагаю это сделано для удобства, чтобы не писать лишнее, как в моём решении. Но всё же для меня отчего-то это создало трудности.

0

Сергей Алексеенко

Это действительно сделано для удобства и тестов :)

1

Есть вопрос или хотите участвовать в обсуждении?

Зарегистрируйтесь или войдите в свой аккаунт

Отправляя форму, вы соглашаетесь c «Политикой конфиденциальности» и «Условиями оказания услуг».

Похожие вопросы

Никита Почаев 23 июля 2020 →

Добрый день! Можете, пожалуйста, подсказать, почему в данном коде не получается поймать исключение внутри м...

user-62966b55b09f62a3 08 июля 2020 →

Поправьте описание: Класс SumRunnable наследуется от Runnable, его API состоит из следующих методов: Класс ...

Анастасия Москалец 21 мая 2020 →

Добрый день, просьба подсказать по заданию, нужно ли передавать элементы массивов или их можно взять из кла...

Владислав Бережной 11 мая 2020 →

Добрый день, Падает с ошибкой - https://ru.hexlet.io/code_reviews/264003 Но из вывода на консоль, не понятн...

Andrey Gud 28 апреля 2020 →

Здравствуйте, это снова я=) Верно ли я реализовал класс RunnableCaller https://ru.hexlet.io/code_reviews/2...