Thinking in Java według mnie dziś należy czytać tylko jako uzupełnienie wiedzy, ponieważ język Java bardzo się zmienił od tego czasu i mogą być tam pokazane złe rzeczy - w sensie sztuki pisania kodu, a i z samej Javy też - chociażby brak Optionala i lambd wiele zmienia.
Według mnie lepiej jest zainwestować w książki Hortsmanna lub jak masz więcej pieniędzy to:
https://helion.pl/ksiazki/java-kompendium-programisty-wydanie-x-herbert-schildt,javk10.htm#format/e
Oo jest promocja ebook za 30 zł, polecam skorzystać. Powyższa książka ma jeszcze tę zaletę, że nie trzeba jej czytać od początku do końca, bo np. w Hortsmannie, o ile pamiętam to jeden przykład jest ciągnięty przez wiele rozdziałów, przez co nie czytając rozdziału jakiegoś tam, nie wiesz skąd się wziął dany fragment kodu i nie da się go wpisać do IDE, i uruchomić bez kartkowania. W wyżej wymienionej tego nie ma, każdy podrozdział praktycznie ma osobny przykład, który można niezależnie uruchomić i testować.