- Paperback: 800 pages
- Publisher: Mike Murach & Associates; 5 edition (June 22, 2017)
- Language: English
- ISBN-10: 1943872074
- ISBN-13: 978-1943872077
- Product Dimensions: 8 x 1.7 x 9.9 inches
- Shipping Weight: 3.4 pounds (View shipping rates and policies)
- Average Customer Review: 7 customer reviews
- Amazon Best Sellers Rank: #87,204 in Books (See Top 100 in Books)
Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
To get the free app, enter your mobile phone number.
Murach's Java Programming (5th Edition) 5th Edition
Use the Amazon App to scan ISBNs and compare prices.
Frequently bought together
Customers who bought this item also bought
Customers who viewed this item also viewed
Finally there is a Java book for serious programmers doing real life business applications. --Donna Dean
If I'd seen this book first, I would not have wasted money (and time) on 6 other books! This one is highly organized, clear, and very effective as a learning tool. --Online post
I bought your Java book a week ago and I am already writing useful programs, not toys! --Richard Cooper
From the Inside Flap
This is the 5th edition of Murach's classic Java book that's trained thousands of developers in the last 15 years. Now fully updated to Java 9, this book helps any programmer learn Java faster and better than ever before: [[It's the one Java book that presents object-oriented features like inheritance, interfaces, and polymorphism in a way that's both understandable and useful in the real world. [[It offers new coverage of JavaFX, the date/time API, lambdas, and working with SQLite databases. [[It uses a self-paced approach that works whether you're a beginner or have years of programming experience. [[It's full of practical coding examples that enhance training and that provide starting code for new applications. [[It lets you practice what you've just learned at the end of every chapter, to solidify your skills. [[And it's all done in the distinctive Murach style that has been training professional programmers for more than 43 years.
Author interviews, book reviews, editors picks, and more. Read it now
Top customer reviews
There was a problem filtering reviews right now. Please try again later.
At the end of every chapter are step-by-step hands-on exercises with solutions. The complete set of exercise files for every chapter and their solutions are available for download from the Murach website. The appendices in the book explain how to download and install the exercise files so you can modify them in your IDE as you work through the exercises. The book uses the Netbeans IDE, but there is a separate download and exercise files that walk you through using the Eclipse IDE if you would prefer that instead.
As a beginning book, it is impossible to cover every feature of the Java language. Even so, the book does not cover some essential items that every Java program should know, and for these reasons I did not give it five stars. For example, the book does show how to override the equals method of an object, but does not show how to override the hashCode method which you must do to maintain the contract specified in the Object class if you override equals. Also, the coverage of collections includes Lists, Maps, Queues, and Deques, but has no coverage of Sets. I wish the chapter on debugging showed how to use the assert keyword and java.util.logging instead of putting in print statements in the application.
When I first got the copy of the book, I was excited to see that it claims that it was updated for Java SE 9. However, the only coverage of Java SE 9 features I could find were about four pages on modules and two pages on JShell out of an over 740 page book. Java 8 is barely covered for that matter, because the book makes little use of lambda expressions outside of a few event handlers in the Swing and JavaFX chapters, and does not even mention streams until the last half of the next to the last chapter.
The book claims it is updated for Java SE 9, so that is the version of Java I installed and tried to use with it. I immediately ran into a problem because NetBeans 8.2 would not run with Java 9. I ended up using an early access daily build of NetBeans 9 to do the exercises. I’m not sure why the author is so committed to NetBeans given its uncertain future now that Oracle is donating NetBeans to the Apache Foundation. I wish the book had an option for IntelliJ community edition because Android Studio is based on it, and it would pave the way for Murach’s Android Programming book.
Every edition of Murach’s Java Programming seems to use a different database for its chapter on JDBC, and this one is no exception. Previous editions used Derby or MySQL. This edition uses SQLite which is a very bare bones embedded database. If the author wants to use a simple lightweight embedded database, I would recommend H2Database because it is written in Java and supports all the SQL data types unlike SQLite.
Be warned that all Murach electronic books are DRM protected which makes them incompatible with most ebook readers. You have to use a special reader to view the files, and that reader may not be available for your platform. In the past it was LockLizard, but Murach is now using VitalSource. This is a major inconvenience, so I tend to stay with the dead-tree version for Murach books.
So if you are willing to overlook the limited coverage of Java 8 and 9 features, and are willing to put up with the inconvenience of DRM or use the dead-tree version, this is a good hands-on introductory book for beginners who are new to Java.
The lessons start with a developing a console application but quickly moves into the development of graphical user interfaces (GUI). I particularly liked the introduction to NetBeans as a development environment. I also liked the almost immediate discussion of having multiple projects within a given application. The discussion of code completion as a tool for development will be most helpful to new programmers.
Although compilers are mentioned in Chapter 1, I would have liked the section that mentions compilers to have a bit more detail on compiler activity such as how the compiler does syntax checking and converts the java code to bytecode.
The text discusses the use of web based documentation in sufficient detail that the user will be able to find their way around the documentation with little difficulty.
Starting with primitive datatypes the user gets a detailed explanation of their use and some of the issues they may face when first using a number or other type of variable. The discussion on the important use of control statements is thorough and well organized. This is also true for exception handling.
The text leads the user to create classes and discusses in detail the uses of object oriented programming including Inheritance. The section on dealing with collections was very well done. The discussion and exercises on the java.io.file package will give users a solid introduction to java.io.
Introducing JavaFX before Swing helps the user understand that Swing is becoming obsolescent and users need to move to JavaFX. Knowledge of both is needed for the foreseeable future.
It goes without saying that the database and jdbc coverage provide the new user with knowledge that used to come in more advanced. The introduction is well covered here.
Overall, I would say this is a great text for a beginner to learn Java and for an experienced programmer to use as a reference.