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:
Добротная книга об основах Java. Книга рассчитана на желающих получить широкие прикладные знания без глубокого погружения в причины тех или иных решений, принятых при проектировании Java. Книга охватывает нововведения до 9-й версии языка включительно.
This is a good intro to Java, but can be slow at first for experienced programmers in the sections where basics of programming are taught. The exercises at the end of each chapter are good homework to reinforce the chapter's info. But, there are errors in a few of the downloaded Java projects used in the exercises, and one project completely missing.
“Murach's Java Programming” follows the standard style of Murach books. The left side of each paired page is text and the right side is code/tables/bullets. This is great for learning a new language because it lets you easily reference the highlights while also having a text description available. As always, the end of chapter exercises are excellent.
The printed book covers NetBeans as the IDE. However, they provide equivalent text for download if you want to use Eclipse. Not as convenient as when they had NetBeans and Eclipse versions of the book. But the Eclipse materials are of book quality and do use the paired page format. Both NetBeans and Eclipse have good screenshots and descriptions of how to accomplish common tasks. However, the Eclipse version doesn't look update for Java 9. In particular, the book talks about launching JShell from NetBeans but the online Eclipse pages don't.
This is a great book for learning Java. It goes over concepts, idioms and things you need to know when program. The intro to modules is clear as is the intro to lambdas/streams. I would have liked chapter 22 to be longer as it is such a core concept. But I understand why they chose a simplified intro to the topic. (I recommend reading “Java 8 for the Really Impatient” after this book.)
I really like the intro including types of applications and keywords. Good programming idioms are covered so readers can see patterns. I particularly like how the code listings highlighted the relevant parts. I also like the UML class diagram introduction. I like that the book covers when various APIs were introduced and doesn't harp on the “old way.” For example, pre-Java 8 dates got a total of two pages of coverage. I'm also happy the book covers SQL and PreparedStatements well.
Murach's previous Java intro book was one of three I recommended to people interested in learning Java. Their Java 8/9 book is just as good.
Disclosure: I received a review copy of this book from the publisher for reviewing it on behalf of CodeRanch.