Have one to sell? Sell yours here
Thinking in Java (2nd Edition) (with CD ROM)
 
See larger image
 
Tell the Publisher!
I’d like to read this book on Kindle

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.

Thinking in Java (2nd Edition) (with CD ROM) [Paperback]

Bruce Eckel
4.3 out of 5 stars  See all reviews (30 customer reviews)

Available from these sellers.


Formats

Amazon Price New from Used from
Paperback £34.08  
Paperback, 31 May 2000 --  
Amazon.co.uk Trade-In Store
Did you know you can trade in your old books for an Amazon.co.uk Gift Card to spend on the things you want? Plus, get an extra £5 Gift Certificate when you trade in books worth £10 or more before June 30, 2012. Visit the Books Trade-In Store for more details.
There is a newer edition of this item:
Thinking in Java: The definitive introduction to object-oriented programming in the language of the world wide web Thinking in Java: The definitive introduction to object-oriented programming in the language of the world wide web 4.3 out of 5 stars (30)
£37.99
In stock.

Customers Who Bought This Item Also Bought


Product details

  • Paperback: 1128 pages
  • Publisher: Prentice Hall; 2 edition (31 May 2000)
  • Language English
  • ISBN-10: 0130273635
  • ISBN-13: 978-0130273635
  • Product Dimensions: 23.1 x 17.8 x 4.8 cm
  • Average Customer Review: 4.3 out of 5 stars  See all reviews (30 customer reviews)
  • Amazon Bestsellers Rank: 608,781 in Books (See Top 100 in Books)
  • See Complete Table of Contents

More About the Author

Bruce Eckel
Discover books, learn about writers, and more.

Visit Amazon's Bruce Eckel Page

Product Description

Amazon.co.uk Review

Programming languages have similarities with general purpose languages such as Spanish. You might know enough Spanish to cobble together a simple letter or read a poster but the real breakthrough comes when you can think in it. Thinking in Java attempts to improve your understanding to the point where you can think about a programming problem in Java rather than in English or whatever and then translate it. This fits extremely well with the basic Java ethos, which is to enable you to frame a problem in terms of the Java objects you'll use to provide a solution.

Eckel approaches teaching you to think in Java by introducing a topic, talking around it to put it in context, providing examples to try and then discussing them in depth. Each chapter has a summary followed by exercises. The book is structured for someone coming from a procedural language background. Eckel spends a lot of time on OOP concepts in general and the way in which it's implemented in Java. After covering operators Eckel goes on to program flow, initialisation and garbage collection, packages, class reuse, polymorphism and so on all the way up to distributed programming (servlets) and appendices on passing objects, the JNI, guidelines and resources. The whole book is also on CD (in several formats including HTML) with the source code (guaranteed to compile under Linux using Java 1.2.2). The CD also contains Thinking in C: Foundations for C++and Java.

Thinking In Java is basically a tutorial. You're intended to read it linearly and work the exercises. It helps that it's well written but it helps even more to have a programming background. If not, you'll probably want a straight Java reference to hand as well. --Steve Patient

Review

"This book is a tremendous achievement. You owe it to yourself to have a copy on your shelf. The chapter on iostreams is the most comprehensive and understandable treatment of that subject Ive seen to date." - Al Stevens Contributing Editor, Doctor Dobbs Journal" Eckels book is the only one to so clearly explain how to rethink program construction for object orientation. That the book is also an excellent tutorial on the ins and outs of C++ is an added bonus." - Andrew Binstock Editor, Unix Review"Bruce continues to amaze me with his insight into C++, and Thinking in C++ is his best collection of ideas yet. If you want clear answers to difficult questions about C++, buy this outstanding book." - Gary Entsminger Author, The Tao of Objects"Thinking in C++ patiently and methodically explores the issues of when and how to use inlines, references, operator overloading, inheritance, and dynamic objects, as well as advanced topics such as the proper use of templates, exceptions and multiple inheritance. The entire effort is woven in a fabric that includes Eckels own philosophy of object and program design. A must for every C++ developers bookshelf, Thinking in C++ is the one C++ you must have if youre doing serious development with C++." - Richard Hale Shaw Contributing Editor, PC Magazine

Suggested Tags from Similar Products

 (What's this?)
Be the first one to add a relevant tag (keyword that's strongly related to this product)
 
(20)

Your tags: Add your first tag
 

Sell a Digital Version of This Book in the Kindle Store

If you are a publisher or author and hold the digital rights to a book, you can sell a digital version of it in our Kindle Store. Learn more

What Other Items Do Customers Buy After Viewing This Item?


Customer Reviews

Most Helpful Customer Reviews
21 of 21 people found the following review helpful
Format:Paperback
When you learn to program you should try and answer your problems against the compiler. Write small little programs that test your thesis. That's how you remember and that's such a brilliant way of getting to know the language. Bruce Eckel has done the same thing. Unfortunately he has filled his 1500 page book with these small little programs. They are terse and take FOR-EVAR to read through and follow, often only to prove a corner case features of the language.

Now don't get me wrong; reading TIJ cover to cover WILL make you a good junior programmer, but seriously evaluate how much time you have on your hands or this book could unfortunately end up only partly read on your bookshelf. It takes a year to read if you are starting from ground zero and you WILL find yourself swearing at Bruce Eckel's convoluted chapters time and time again.

Overall the structure of TIJ is good in terms of what it covers etc (look forward to 200 pages on parallel programming for instance), but you tend to get lost in all the pages. You're on page 690 with another 600 to go, full of small programs that prove less essential aspects of the language. You get lost in all the pages. The program examples are hard to skim through to get an overview when you don't know the subject area and you are forced to read it all as a tutorial. This is where I think TIJ fails the beginner.

Another personality trait of TIJ is it's offset in C/C++. While sort of relevant enough, it still shows it age. Im sure the C-to-Java move was prevalent around the time Bruce wrote the 1st edition, but in 2008 i doubt that's where most of the java-learning audience are coming from.

I have spent a lot of time with this book and certainly have developed a love-hate relationship with it. While it probably is the most thorough introduction to the language, it probably also is a lot more than you'd wanna ask for. That's why I don't recommend TIJ as your first Java book. Albeit it's good parts it is still too much of a braindump. It takes too long to work through it, and I don't think the time spend pays off on a adequate scale. There is a limit to how many hours there is in the day, no matter how keen a beginning programmer you are. There are other books that take a more pedagogical approach to learning the Language. Kathy Sierra's books come to mind.

My recommended path is to start with Head First Java, then either TIJ or otherwise Kathy Sierra's SCJP book, that one really gets into the nitty gritty in an time-efficient manner - In fact TIJ and SCJP have complemented each other nicely. I've read the SCJP chapter on a subject first, then gone back to TIJ and worked through it more carefully.
Comment | 
Was this review helpful to you?
13 of 13 people found the following review helpful
By A Customer
Format:Paperback
I will preface my comments by saying that this is not a suitable book for those seeking to learn Java. Java novices should seek out Head First Java, and follow up with the excellent Agile Java. You are then ready to take on this book.

Widely regarded as one of the best books on Java, the 4th edition of Thinking in Java, covering Java 5.0, was a long time coming. It was well worth the wait, however.

Admittedly, it starts slowly. The first couple of hundred pages are somewhat uninspired (10 pages devoted to a program that exhaustively evaluates operations on all primitives, for example), but it picks up. And when it hits its stride it is comprehensive.

Traditionally tricky areas of Java like the I/O classes and inner classes are well-covered, and the coverage of the new features in Java 5.0 are second to none, in particular annotations and generics, the latter going well beyond their use for type-safe containers, and actually making self-bounded types understandable. Nearly two hundred pages are devoted to the new threading and concurrency classes. If you really want to know what's going on with these core classes, this is the go-to book.

The coverage of Swing is uninspiring, particularly as apart from a smattering of pseudo-UML class diagrams, there is only one illustration in the entire book (and it's 1400 pages long) - a picture of a Flash component, and it's a text box! However, there are plenty of other books out there that cover Swing in depth, so it's easy to overlook this. Personally, I didn't see the need for the introduction to Flash in a Java book, although the discussion of the SWT classes was useful.

The other downside to the book is that the example code can be long. On the one hand, they have the advantage of being complete and runnable. On the other, it can be hard to spot the pertinent parts, and although the code is copiously commented, the Head First series of books have ably demonstrated the value of a more in-depth annotation, coupled more closely to the main text.

Additionally, especially early on, the code examples are often dull and abstract, with method names like f(), which obfuscate rather than clarify. Later on, however, there are several witty and imaginative examples, so I can only assume that Bruce Eckel got a bit bored trying to make bitshifting entertaining. Finally, people new to Java and without a C background, could find the early references to how things are different in Java to C and C++ unnecessarily confusing, although one is assumed to have downloaded the flash-based 'Thinking in C' e-seminar from the author's website.

These are minor disappointments, however, compared to the breadth and depth on offer here. You will need to be pretty expert at Java not to pick up any new tips on performance or idiomatic usage from the material here, and I will be using this as my first stop for reference purposes, particularly for the new Java 5.0 features.

If you do any Java programming, this is well worth your money and pretty essential.

Comment | 
Was this review helpful to you?
9 of 9 people found the following review helpful
Format:Paperback
It judging this book, it is important to understand what this book is, and what it is not.
Firstly, it is not an introduction to programming. I would reccommend that you are reasonably proficient in at least one other language before reading this book.
Secondly, it does exactly what the title suggests: It leads you to think in Java - it does not give interesting or useful programs as examples - simply code which demonstrates (well) the concept being explained.
Thirdly, it does not so much cover the practicalities of Java as the theory behind it. This book really requires the Sun Java Reference documentation to be used by the reader.
So, understanding this, withing this context it is an excellent book. By the time you're finished, you will have a rock-solid base on which to build your Java knowledge.
Comment | 
Was this review helpful to you?
Most Recent Customer Reviews
Thinking anew
When you have been coding for many years, you forget the difficulty and the abstractions. Now when you have to teach programming to beginners that is a problem. Read more
Published on 16 July 2009 by Niels Müller Larsen
Crystal clear
If you are already an experienced software engineer, but have no formal knowledge of proper object-oriented languages (or know only C and/or C++), this is the best book I know of... Read more
Published on 19 Sep 2006 by S. MACLAREN
A bit more special than other JAVA tutorials
If you search for Java books on Amazon you will notice that there are hundreds of Java tutorials available, and most of them will adequately teach you how to program in Java. Read more
Published on 30 April 2003 by Mr Daniel Clapson
Don't believe the hype
This is *NOT* a good book. The explanation of concepts using code that is buried within pages of surrounding support code is bad enough, given that the apparently important code... Read more
Published on 17 May 2002
Allmost brilliant
Don't get me wrong this is an excellent book. Despite being about Java, it is possibly the best introduction to OOP concepts that I have read. Read more
Published on 3 May 2002
A must read
If you want to know how to get up and running with Java, and understand the semantics of the language this is the book for you. Read more
Published on 1 Oct 2001
Why buy this book?
Why buy this book when you can download a version off the authors web site???

I found the order and context of this book are little confusing. Read more

Published on 18 Mar 2001 by I. C. Hayes
Excellent book.
Excellent book for computer scientists. If you want a book explaining the java synthax (loops, assignations, etc) for dummies, buy another one. Read more
Published on 17 Feb 2001
Fails to deliver
After hearing all the hype surrounding this so called 'revolutionary' text on java I was bitterly disappointed with the reality. Read more
Published on 25 Jan 2001
Best Java Programming book I've read
Summary says it all really. Avoids the "and this method does this...and then this method does that" approach that you get by downloading Sun's API documnetation, and... Read more
Published on 11 Dec 2000
Search Customer Reviews
Only search this product's reviews

Customer Discussions

This product's forum
Discussion Replies Latest Post
No discussions yet

Ask questions, Share opinions, Gain insight
Start a new discussion
Topic:
First post:
Prompts for sign-in
 

Search Customer Discussions
Search all Amazon discussions
   


Listmania!


Look for similar items by category


Look for similar items by subject


Feedback