Как же всё-таки учить Java?
1. Научиться пользоваться поиском. 
https://qna.habr.com/search?q=Как+учить+Java%3F
2. Все.
Это лично мой способ, я считаю эффективный.
Как вы и сказали, практика это самое важное. Просто найдите себе задачу или цель сделать что-то и выполняйте её. 
Поначалу будете просто копировать код, потом придется решать задачи которых не будет в интернете. Только и опыт и куча практики, книги по большей части это понты. Вся нужная информация это туториалы индусов, форумы и документация.
Повышая сложность задач, будете повышать свой навык и уровень.