Cover of Thinking in Java

Thinking in Java

by Bruce Eckel · first published 1997

45mentions
28recommended by
37HN commenters
2007–2026first – last mentioned

76% recommend24% neutral

Why HN recommends it

Thorough, readable introduction to Java that also teaches object-oriented thinking in general. Suits newcomers to Java or OO, and programmers with prior experience; Eckel's clear, not-dry style is praised.

Summarised by Claude from recommending comments

“Thinking in Java should be read cover to cover by every Java programmer, then kept close at hand for frequent reference. The exercises are challenging, and the chapter on Collections is superb! Not only did this book help me to pass the Sun Certified Java Programmer exam; it’s also the first book I turn to whenever I have a Java question.” —Jim Pleger, Loudoun County (Virginia) Government “Much better than any other Java book I’ve seen. Make that ‘by an order of magnitude’.... Very complete, with excellent right-to-the-point examples and intelligent, not dumbed-down, explanations.... In

Affiliate links. As an Amazon Associate I earn from qualifying purchases.

Mentions per year

70 2007: 1 mention2008: 4 mentions2009: 1 mention2010: 7 mentions2011: 2 mentions2012: 5 mentions2013: 2 mentions2014: 5 mentions2015: 3 mentions2016: 1 mention2017: 0 mentions2018: 2 mentions2019: 1 mention2020: 1 mention2021: 1 mention2022: 1 mention2023: 1 mention2024: 1 mention2025: 2 mentions2026: 2 mentions200720172026

What Hacker News says

  • squidsoup · Jul 13, 2011 · Recommends

    In my experience most of the best Java learning resources are books - I got the most out of Joshua Bloch's Effective Java Second Edition which assumes some familiarity with the language. Bruce Eckel's Thinking in Java is an excellent introductory approach, particularly if you're new to OO, but you could probably give it a miss. I don't know if it would apply to your development situation, but also consider investigating…

    on “Ask HN: Modern Java tutorials?” ↗
  • silencio · Jun 19, 2008 · Recommends

    …book and I didn't find it very helpful. I ended up using it literally as a doorstop after the prof suggested we do so as a joke, only kept it to do the assignments from the book, and went with Eckel's Thinking in Java instead. That was a few years ago and a couple editions back..but I think some of it was personal preference/frustration. It's been a while so I forgot what my particular gripes were..I thought the introductory…

    on “Ask YC: Best book for Java” ↗
  • mechanical_fish · Dec 16, 2008 · Recommends

    Years ago, I used Bruce Eckel's Thinking in Java: http://mindview.net/Books/TIJ4 I liked it a lot at the time. No idea if that's the best thing out there now. I haven't seen the latest edition, as I haven't had to touch Java in several years.

    on “Ask HN: Resources for learning Java?” ↗
  • mgkimsal · Sep 25, 2010 · Recommends

    …that, you might have a better idea of specific areas of Java you want to explore more (Android, as you say, or other areas) and you can go looking for more specific books in those areas. Bruce Eckel's "thinking in java" isn't bad either. Might be a bit dated in some sections, but the basics are there. It' a creative commons free book, IIRC.

    on “Ask HN: Course or book to learn Java?” ↗
  • ignoramous · Jul 30, 2019 · Recommends

    From the ones I've read: The Head First series of books are really really nice... other such books... D Crockford's JavaScript: The Good Parts; B Eckel's Thinking in Java; Skiena's The Algorithm Design Manual; M Nielsen's Neural Networks and Deep Learning; J Kurose's Computer Networking: A Top-Down Approach; R Lafore's Data Structures and Algorithms; J Bloch's Effective…

    on “Book Review: Designing Data-Intensive Applications” ↗
  • mechanical_fish · Jan 22, 2008 · Recommends

    …(the SVN book -- just google "SVN book" to find it -- is easy to understand, but Linus Torvalds is right when he claims that Git is much nicer!) Read "Mastering Regular Expressions". Read Bruce Eckel's Thinking in Java so that you know enough about the world's most popular language to understand where it sucks, ;) and so that you can follow the conversation of much of the rest of the software world. Read K&R.

    on “Ask YC: Study theory, or keep coding?” ↗
  • strlen · Jun 18, 2008 · Recommends

    Bruce Eckel's _Thinking in Java_ (available free online, just as are his C++, Design Patterns and .NET books) is excellent, combined with just API references.

    on “Ask YC: Best book for Java” ↗
  • jgalvez · Sep 21, 2010 · Recommends

    A great classic. I basically started learning Python because Bruce Eckel recommended it. And I'm never tired of recommending "Thinking in Java" as a must-read for all programmers, regardless of whether they aspire to become Java programmers or not :)

    on “Bruce Eckel: Strong Typing vs. Strong Testing (2003)” ↗
  • wallflower · Nov 16, 2010 · Recommends

    …You'll ease into it. I have a friend who is struggling with OO as well. He really gets lost in the decoupled nature of the language and development environment. Take a look at Bruce Eckel's free book "Thinking in Java" (3rd Ed) http://mindview.net/Books/TIJ/DownloadSites

    on “Is it hard to become an Android developer?” ↗
  • liva · Feb 9, 2012 · Recommends

    Thinking in Java by Bruce Eckel is a great book and teaches you not only the "What"s and "How"s of Java but also the "Why"s. http://amzn.to/o2lVx0

    on “Best book to study Java” ↗
  • prophetjohn · Mar 26, 2012 · Recommends

    Thinking in Java[1] is a nice, thorough book geared toward people with prior programming experience trying to learn Java. It's mainly geared at C++ programmers, but knowledge of C++ is by no means a prerequisite and probably…

    on “Books Programmers Don't Really Read But Recommend” ↗
  • zgm · Jun 7, 2012 · Recommends

    With regards to Java itself, definitely check out Bruce Eckel's Thinking in Java (http://www.amazon.com/Thinking-Java-Edition-Bruce-Eckel/dp/0...). The 4th edition is the most current. However, previous ones are available for free here: http://www.mindviewinc.com/Books/downloads.html.…

    on “Ask HN: How to get started in Java Development?” ↗
  • justin_hancock · Dec 29, 2012 · Recommends

    Bruce Eckel is releasing a book this year on Scala, Atomic Scala: http://www.atomicscala.com/ Eckel's Thinking in Java was a classic, I suspect he will this one out of the bag too. The Odersky book is good as a reference, but not a great teaching tool, its too big. I watched the video lectures, they're quite good if…

    on “Why Learn Scala in 2013?” ↗
  • specialist · Nov 10, 2013 · Recommends

    Books aren't like software where you can release often and iterate. Bruce Eckel's Thinking in Java was written in public. Early drafts were available as PDFs. High quality feedback, iterations, rapid releases, community engagement, mindshare, etc. It was great to observe. Once it hit paper, I bought…

    on “Time Series Analysis and Its Applications: With R Examples” ↗
  • ragatskynet · Jan 10, 2014 · Recommends

    The answer: as much as you can learn. But actually, to start, a basic skillset is enough. I would say that you should start with Java first then you can learn the Android stuff. Thinking in Java is the book I always recommend (by Bruce Eckel); Android has a good tutorial on Google's Android site, I think that is good for beginners. I have not read any books on Android but I am sure there are…

    on “Ask HN: How much Java do you need to know to write Android apps?” ↗

Keyboard shortcuts

/
Focus search
j / k
Next / previous book
Enter
Open focused book
Esc
Close / go back
g h
Go to Home
g t
Go to Top all-time
g m
Go to Most recommended
g r
Go to Rising
g f
Go to For You
?
Show this help