Goodreads helps you keep track of books you want to read.
Start by marking “Thinking in Java” as Want to Read:
Thinking in Java
Enlarge cover
Rate this book
Clear rating
Open Preview

Thinking in Java

4.16  ·  Rating details ·  2,040 ratings  ·  79 reviews
Thinking in Java is a printed version of Bruce Eckel's online materials that provides a useful perspective on mastering Java for those with previous programming experience. The author's take on the essence of Java as a new programming language and the thorough introduction to Java's features make this a worthwhile tutorial.

Thinking in Java begins a little esoterically, wi

Paperback, Fourth Edition, 1401 pages
Published February 10th 2006 by Prentice Hall (first published February 19th 1998)
More Details... Edit Details

Friend Reviews

To see what your friends thought of this book, please sign up.

Community Reviews

Showing 1-30
Average rating 4.16  · 
Rating details
 ·  2,040 ratings  ·  79 reviews

More filters
Sort order
Start your review of Thinking in Java
Mar 15, 2015 rated it really liked it
Bruce's approach to teaching the Java fundamentals is refreshingly different from most Learn Java books. I have been working with Java for three years, starting with college courses and the very basic Teach Yourself Java books. Most books simply go into syntax and fundamentals from a 'how-to' approach. 'Thinking in Java' is more concerned with explaining the Java language's design and behavior, and how the current topic fits in with Object Oriented Programming. I found myself having constant, "O ...more
Dec 26, 2019 added it
Shelves: programming
The book is full of valuable insights and good, elaborate explanations. Well worth the read.
Mar 06, 2018 rated it it was amazing
This book is actually really good for a (really curious) beginner who has never seen a single line of code before. It is absolutely not a cookbook.

In school, they often present "intro to programming" classes as "how to memorize sections of funny symbols". You are basically glued to whatever programming language they use to introduce the CONCEPT of (object-oriented) programming or even computer science. This does not prepare you for problem solving in any way.

In this book, the intro chapter alo
Feb 08, 2009 rated it it was ok
This book suffers from the same problem that many computer science books have. It seems that Eckel believes that learning a programming language should be completed on an exponential curve.

0 - basic... "This is a a variable" type stuff.
10 - this is how you make a function.
100 - you need to develop classes in this manner
1000 - when you're calling from the stack...

I know that one should have some computer science background when reading this book, however it seems to me that one should either star
Anton Petrov
Mar 15, 2013 rated it liked it
Recommends it for: Intermediate programmers that want to learn Java.
Shelves: in-english, read-code
I lived to see the last page of that book!

It definitely expanded my vision and understanding of the programming world of Java. The book is full of details and examples. I found them a bit too many. They would serve much better as a reference rather than to teach something about the language itself. Nevertheless they absolutely satisfied my curiosity at the points where I had some extra in my bag.

I would recommend this book to the intermediate programmer. I don't think it is a book for the very b
I think it is a very good book improving the java learner to further study java.
Rostislav Vatolin
The basics of Java. Easy to read.
Oct 15, 2013 rated it it was amazing
In my mind, this book is a seminal work. It was the first real programming book I ever read, and although I've never done anything significant in Java, the author's explanation of the various object-oriented concepts has served me well over the years. My only sorrow is that the version I read was concerning the rather early Java 2 (1.2) and so many of the new OOP concepts (generics and dependency injection anyone?) I have had to learn fresh.
Rahul Mahindru
Sep 24, 2015 rated it really liked it
Good book to understand the basics of java and how things work internally. It's one time book for java developers. If you want to know the best practices for java, I will refer "Effective Java". But to understand "Effective Java", you should be very clear about java basics and this book is best for understanding the basics :)
Aaron M
May 11, 2010 rated it really liked it
Bruce Eckel really nails it. I'm not a fan of Java, but when I need to brush up this is the book i turn to. It really does encourage you to think in Java. Which somehow is different than just thinking like a programmer. HA!
Andrey Vasilyev
Nov 17, 2011 rated it it was amazing
This is a good book. I would recommend it as a first java book you should read
Feb 10, 2018 rated it it was amazing
One of the best Java books.
Deep Hathi
Apr 14, 2020 rated it it was amazing

This book only covers till Java 5. So, many people can complain that it's a little dated. However, it teaches the language foundation so well, that post Java 5 features would be a cakewalk.

The book is thought out really well and should be read sequentially. It covers each concept in detail and provides ample examples and exercises to clear doubts. The coverage of collection, generics and concurrency is best in class.

If you are a Java programmer and want to learn the language in de
Dmytro Chaban
Feb 01, 2018 rated it it was amazing
Really great book to refresh knowledge about java and concurrency. I was thinking that this book will just tell you about language specification e.g you have to write variable as so etc. But this book really helps you "Think" in java. A lot of examples helps to understand the problem better.
Although it can be somehow overwhelming for novices, as a book saying in the preface. This book is more suitable for people who already know the language and ready to refresh/expand their knowledge of it.
Anurag Misra
Jun 06, 2017 rated it it was amazing  ·  review of another edition
Shelves: programming
Excellent read. Recommended for new comers, as well as experienced developers. This book gives an insight and perception into writing code, and working of the language no other programming reference manuals come close to. This book will help you develop your approach to design and object oriented programming.
Alexandru Manescu
Mar 25, 2020 rated it it was amazing
An impressive exhaustive presentation of Java. In the end you'll be familiarize with all the aspects of this language(how it was at that time at least); even with topics that are more "obscure" to say, like type erasure, reflection. It was very useful for me when I was studying computer science. I'm very glad that I have stumbled upon this read(it was a long time ago).
Rumen Pasev
Jun 03, 2020 rated it it was amazing  ·  review of another edition
The philosophy in the first 50 pages of focus on a syatematic philosophy which we might playfully call a post-Aristotelian Pythagoreanism. Done in classical dialogue format, details a substrate; forms do not exist separately from matter but exist in seed prior to manifestation; that individual consciousnesses are co-extensive with one another across the entire cosmos.
Dmytro Karataiev
May 16, 2017 rated it really liked it
A bit outdated, code listing are hard to follow due to a bad text formatting.
Radoslaw Radoslawski
Dec 28, 2019 rated it really liked it
quite heavy and hard but essential for every Java Dev out there.
Not sure if it is still up to date (I've read while on the universtity) but the basic concepts and technics are immortal.
Anca Burducea
Oct 08, 2019 rated it it was amazing
This book taught me how to think in objects, how to think in programming concepts and how to think in Java. I wish it was updated, because Eckel's writing is just great.
Stepan Soboliev
Feb 27, 2017 rated it really liked it  ·  review of another edition
Good book. Many moments described in detail. But not very good translation into Russian.
Janez Perme
Nov 02, 2014 rated it liked it
Recommended to Janez by: Amazon in Goodreads reviews
This one is definitely not for a beginner. You better have some previous knowledge about Java. Knowing C/C++ would be a plus. At least elementary knowledge.

Pros: Has some good tricks explained. Sometimes it goes into great details. Also, it presents some examples that could be quite useful in everyday tasks. Anonymous classes were clearly explained. The same goes for Exceptions.

Cons: Explanations of patterns were inconvenient. Explanations of generics were also inconvenient - not clear enough. M
Nov 08, 2015 rated it really liked it
Shelves: ebooks-i-own
Good intro to Java, although it's a bit outdated now (the fourth edition focuses on Java 5 while the latest standard is Java 8 from 2014), but it's good to have an idea of several aspects of the language. Coming from C++ I found it entertaining and clear, the auther often makes a parallel between both languages. I'll try to compensate by reading Java 8 in Action next.

I didn't go through the last chapter as I've heard that there's a new way of implementing a user interface, and also I'm not inter
Josh Hamacher
Oct 01, 2010 rated it really liked it
Shelves: programming
I'm giving this book four stars despite not having read it cover-to-cover. It's a massive tome; doing so would be impractical. But as a reference it can't be beat. I've found answers to most of my questions about Java in this book. My usual workflow:

1. Google my question.
2. Read a couple web pages.
3. If those don't make sense (which is often the case), consult this book. Often I can find clear, concise answers and advice.
Phúc Võ
The first book which inspires me a lot, convert me to the Java Religion (just kidding). It tells you from the fundamental of programming concepts, represented in Java, to a interesting sample projects that spans through multiple chapters.
Ben Seymour
Feb 06, 2007 rated it it was amazing
Recommends it for: New Java programmer
Shelves: it
I read this for the first time when I had been programming in Java for about 9 months, and I really wished I had read it on day 1. (It was an earlier version that I read at this time).
The author has the confidence to make it freely available online, and know that people will still go out and buy it, even if it is just by way of a thankyou.
Maciek Zalewski
Jun 20, 2008 rated it really liked it
If you want to learn Java, this book is for you. This is probably the best book about the language (at least that's what I've heard ;)). However, maybe that's because of translation (I've read it in Polish), sometimes the book was really difficult to read and understand.
João Fernandes
Sep 22, 2012 rated it it was ok
Too slow on basic concepts. So if you join that with the fact that just the size of the book is scaring enough... I just felt that the book was never able to motivate me. That said, sometimes is a good reference.
Said A
Sep 26, 2012 rated it it was amazing
Shelves: programming
That's the first book I read to learn more about Java programming language. After a little research I found that this book was among the "must read"'s for Java developers. Good insights, to the point and no unnecessary clutter text...
Oct 18, 2012 rated it it was amazing
An excellent book on Programming in Java, although not recommended for total beginners to programming. A prior hands-on experience in Java or C/C++ is required. The book covers the basic and several pitfalls. Recommended for intermediate programmers.
« previous 1 3 next »

Readers also enjoyed

  • Effective Java
  • Head First Design Patterns
  • Design Patterns: Elements of Reusable Object-Oriented Software
  • The C Programming Language
  • Head First Java
  • Clean Code: A Handbook of Agile Software Craftsmanship
  • Java Concurrency in Practice
  • Code Complete
  • The C++ Programming Language
  • The Clean Coder: A Code of Conduct for Professional Programmers
  • Patterns of Enterprise Application Architecture
  • Effective C++: 55 Specific Ways to Improve Your Programs and Designs
  • Test Driven Development: By Example
  • Spring in Action
  • The Pragmatic Programmer: From Journeyman to Master
  • JavaScript: The Good Parts
  • Introduction to Algorithms
  • Refactoring: Improving the Design of Existing Code
See similar books…

Goodreads is hiring!

If you like books and love to build cool products, we may be looking for you.
Learn more »

Related Articles

San Francisco is a gold rush town. There aren’t many books about people in their 20s who move to Silicon Valley with dreams of earning a living wag...
34 likes · 1 comments