Free Downloads
Thinking In Java (4th Edition)

“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 contrast to many other Java books I found it to be unusually mature, consistent, intellectually honest, well-written, and precise. IMHO, an ideal book for studying Java.” —Anatoly Vorobey, Technion University, Haifa, Israel “Absolutely one of the best programming tutorials I’ve seen for any language.” —Joakim Ziegler, FIX sysop “Thank you again for your awesome book. I was really floundering (being a non-C programmer), but your book has brought me up to speed as fast as I could read it. It’s really cool to be able to understand the underlying principles and concepts from the start, rather than having to try to build that conceptual model through trial and error. Hopefully I will be able to attend your seminar in the not-too-distant future.” —Randall R. Hawley, automation technician, Eli Lilly & Co. “This is one of the best books I’ve read about a programming language.... The best book ever written on Java.” —Ravindra Pai, Oracle Corporation, SUNOS product line “Bruce, your book is wonderful! Your explanations are clear and direct. Through your fantastic book I have gained a tremendous amount of Java knowledge. The exercises are also fantastic and do an excellent job reinforcing the ideas explained throughout the chapters. I look forward to reading more books written by you. Thank you for the tremendous service that you are providing by writing such great books. My code will be much better after reading Thinking in Java. I thank you and I’m sure any programmers who will have to maintain my code are also grateful to you.” —Yvonne Watkins, Java artisan, Discover Technologies, Inc. “Other books cover the what of Java (describing the syntax and the libraries) or the how of Java (practical programming examples). Thinking in Java is the only book I know that explains the why of Java: Why it was designed the way it was, why it works the way it does, why it sometimes doesn’t work, why it’s better than C++, why it’s not. Although it also does a good job of teaching the what and how of the language, Thinking in Java is definitely the thinking person’s choice in a Java book.” —Robert S. Stephenson Awards for Thinking in Java 2003 Software Development Magazine Jolt Award for Best Book2003 Java Developer’s Journal Reader’s Choice Award for Best Book2001 JavaWorld Editor’s Choice Award for Best Book2000 JavaWorld Reader’s Choice Award for Best Book1999 Software Development Magazine Productivity Award1998 Java Developer’s Journal Editor’s Choice Award for Best Book Thinking in Java has earned raves from programmers worldwide for its extraordinary clarity, careful organization, and small, direct programming examples. From the fundamentals of Java syntax to its most advanced features, Thinking in Java is designed to teach, one simple step at a time. The classic object-oriented introduction for beginners and experts alike, fully updated for Java SE5/6 with many new examples and chapters! Test framework shows program output. Design patterns are shown with multiple examples throughout: Adapter, Bridge, Chain of Responsibility, Command, Decorator, Facade, Factory Method, Flyweight, Iterator, Data Transfer Object, Null Object, Proxy, Singleton, State, Strategy, Template Method, and Visitor. Introduction to XML for data transfer; SWT, Flash for user interfaces. Completely rewritten concurrency chapter gives you a solid grasp of threading fundamentals. 500+ working Java programs in 700+ compiling files, rewritten for this edition and Java SE5/6. Companion web site includes all source code, annotated solution guide, weblog, and multimedia seminars. Thorough coverage of fundamentals; demonstrates advanced topics. Explains sound object-oriented principles. Hands-On Java Seminar CD available online, with full multimedia seminar by Bruce Eckel. Live seminars, consulting, and reviews available. See Download seven free sample chapters from Thinking in Java, Fourth Edition. Visit

Paperback: 1150 pages

Publisher: Prentice Hall; 4 edition (February 20, 2006)

Language: English

ISBN-10: 0131872486

ISBN-13: 978-0131872486

Product Dimensions: 7 x 1.9 x 9.1 inches

Shipping Weight: 3.4 pounds (View shipping rates and policies)

Average Customer Review: 4.2 out of 5 stars  See all reviews (377 customer reviews)

Best Sellers Rank: #113,209 in Books (See Top 100 in Books) #116 in Books > Computers & Technology > Programming > Languages & Tools > Java #455 in Books > Textbooks > Computer Science > Programming Languages #723 in Books > Computers & Technology > Software

rating 4.5.First of all this book was freely available online. That was how it was written I believe: posted, public review, correction. A novel approach.This books is plain inside. His prose and explanations were ostly good, but a time just a little too verbose for me (no criticism but it just didn't do it for me: I prefer succint explanation + example: he can wax lyrical just a little bit, which lends some warmth to the work, but also for busy people it's a personal judgement). The code examples in the book are probably the ugliest I've ever seen in a while (font wise...the code is presented as pages and pages and pages of monospace...ah the humanity! Very intimidating for the novice! Compare to deitel: colored!)Seriously, given the process this book went through: continual public online review, editing and criticism, means the errors are minimal and the content focused on what you need to know as guaranteed by peer-reivew (not a bunch of superfluous, repitition nonsense that pad out Deitel books)...This is a really great book that was diminished a little through corner cutting by a publisher. If you can get beyond the mediocre presentation, then you find an excellent book for the above novice programmer. It's quite a philosophical journey through the heart of Java at times. And coverage of most topics is quite strong (if a little weirdly ordered at times...but then that's a personal thing: eg. the introduction that the beginning is quite deep and intrduces some heavy-ish concecpts straight off the bat...but again this is a personal judgement: objects first or basics first? its 50-50 either way?)Actually I should clarify that: if you're a beginner: This book is not for you I don't think.

The book is great! I particularly enjoyed the following chapters:- inner classes (this chapter kicks serious butts; far better than even Core Java 4th edition's chapter on them)- the Class class and its usage (same stands for reflection)- discussing the Collection classes just kicks ass - Just Java 1.2, the only book Ive read that contains SOME info on these classes is far less comprehensive. Bruce kicks ass!- I also loved the chapter on threads - this book is the only one (I've read several Java2 books) to discuss WHY suspend/resume/ stop are deprecated in Java2 (actually, the reason for deprecating stop() is a bit misleading - the author should have stressed that it's exiting run() from _inside_ an atomic operation that causes the problem here). Just Java 1.2 doesn't even try to discuss the problem of these three methods.- I really liked it that Bruce Eckel always prefers experimenting to repeating what the Language Specification says- the remarks scattered in the book are particularly cool. Even Core Java 4th ed lacks the number and depth of remarks, not to speak of other books (Just Java 1.2 is even worse in this respect) The bad points of the book:- the Swing chapter sucks... it needs REAL update. There are no other JFC libs, either - there is no Java2D, accessibility, drag-and-drop etc.- the discussion of sing the clipboard is far worse than that of Core Java 3rd ed. vol.2.- the same stands for 1.1/1.2 security - both Core Java 3rd ed. vol.2. (1.1) and Just Java 1.2 (1.2) are better in this respect- the same stands for i18n- the introduction to CORBA was particularly weak (not that other Java-books are good in this respect)- the author pays too much attention to the 1.

This book goes way beyond the "tips and tricks" explained in so many other Java books. It explains in exhaustive detail how and why one should use the object oriented features of the language to produce professional-grade code. It explains many finer points of scope resolution, syntax, and class design which I have never seen covered anywhere else.It covers the most important parts of the standard libraries to illustrate good object-oriented design and coding practices. The whole idea is that, once you understand the underlying principles of the language, you'll be capable of using the free Java API documentation without needing everything to be explained to you any further.In my review of the first edition, I complained that the examples weren't always as realistic as I would have liked to have seen, and that the writing was occasionally not as clear as it might have been. I think that the writing has gotten clearer in most places, but the examples still sometimes leave me thinking "That's really fascinating, but when, why, and how would I use this in an actual development project?" Nevertheless, I have learned to love even the code examples for their authoritative demonstrations of object-oriented coding techniques that even most expert Java developers probably don't know, and probably should know.As a programmer, I often get depressed when I see how much really atrocious code is being pumped out. After a ten-hour day of wading through swamps full of incomprehensible spaghetti, it is like a breath of fresh air to open Bruce Eckel's masterpiece and realize that there are others out there who care about the quality of the software being developed today.

JAVA: Quick and Easy JAVA Programming for Beginners (Java, java programming, java for dummies, java ee, java swing, java android, java mobile java apps) JAVA: The Ultimate Guide to Learn Java Programming Fast (Programming, Java, Database, Java for dummies, coding books, java programming) (HTML, Javascript, ... Developers, Coding, CSS, PHP Book 1) JAVA: Easy Java Programming for Beginners, Your Step-By-Step Guide to Learning Java Programming (Java Series) Java: The Ultimate Guide to Learn Java and C++ (Programming, Java, Database, Java for dummies, coding books, C programming, c plus plus, programming for ... Developers, Coding, CSS, PHP Book 2) Positive Thinking: How to Eliminate Negative Thinking and Gain Success, Health and Happiness Through Positive Thinking and Self-empowering Affirmations (Positive Thinking Everyday Book 1) Javascript: Beginner to Expert with Javascript Programming (Javascript, Javascript Programming, Javascript for Beginners, Java, Java Programming, Java for Beginners,) JAVA: JAVA 100 Tests, Answers & Explanations, Pass Final Exam, Pass Job Interview Exam, Pass Engineer Certification Exam, Examination, Learn JAVA programming in easy steps: A Beginner's Guide Thinking in Java (4th Edition) Programming: Computer Programming for Beginners: Learn the Basics of Java, SQL & C++ - 3. Edition (Coding, C Programming, Java Programming, SQL Programming, JavaScript, Python, PHP) The Java EE Architect's Handbook, Second Edition: How to be a successful application architect for Java EE applications Java in 21 Days, Sams Teach Yourself (Covering Java 8) (7th Edition) The Nature of Theoretical Thinking in Nursing: Third Edition (Kim, The Nature of Theoretical Thinking in Nursing) SOA with Java: Realizing Service-Orientation with Java Technologies (The Prentice Hall Service Technology Series from Thomas Erl) App Development: Swift Programming : Java Programming: Learn In A Day! (Mobile Apps, App Development, Swift, Java) Programming with Java IDL: Developing Web Applications with Java and CORBA Java Internationalization (Java Series) Data Structures in Java: From Abstract Data Types to the Java Collections Framework Functional Programming in Java: Harnessing the Power Of Java 8 Lambda Expressions JAVA: A Beginner to Expert Guide to Learning the Basics of Java Programming (Computer Science Series) Effective Java (Java Series)