The #1 Java Guide for Serious Programmers: Fully Updated for Java SE 9, 10 & 11 For serious programmers, Core Java, Volume I--Fundamentals, Eleventh Edition, is the definitive guide to writing robust, maintainable code. Whether you're using Java SE 9, 10, or 11, it will help you achieve a deep and practical understanding of the language and API, and its hundreds of realistic examples reveal the most powerful and effective ways to get the job done. Cay Horstmann's updated examples reflect Java's long-awaited modularization, showing how to write code that's easier to manage and evolve. You'll learn how to use JShell's new Read-Eval-Print Loop (REPL) for more rapid and exploratory development, and apply key improvements to the Process API, contended locking, logging, and compilation. In this first of two volumes, Horstmann offers in-depth coverage of fundamental Java and UI programming, including objects, generics, collections, lambda expressions, Swing design, concurrency, and functional programming. If you're an experienced programmer moving to Java SE 9, 10, or 11, there's no better source for expert insight, solutions, and code. Master foundational techniques, idioms, and best practices for writing superior Java code Leverage the power of interfaces, lambda expressions, and inner classes Harden programs through effective exception handling and debugging Write safer, more reusable code with generic programming Improve performance and efficiency with Java's standard collections Build cross-platform GUIs with the Swing toolkit Fully utilize multicore processors with Java's improved concurrency See Core Java, Volume II--Advanced Features, Eleventh Edition (ISBN-13: 978-0-13-516631-4, coming in 2018), for expert coverage of Java 9, 10, and 11 enterprise features, the module system, annotations, networking, security, and advanced UI programming. Register your book for convenient access to downloads, updates, and/or corrections as they become available. See inside book for details.
Whoa! I can't believe I read a thousand-page book on a single programming language. And that's just the first volume.
Soon after I started the book I began questioning the value of reading a book like this cover to cover. If you know a few (or maybe even one) programming languages, theres only so much to learn in a new one. Right? Why is this book so big? There are two reasons. First, the standard library. The majority of this book deals with the Java class library, it's features, its usage and best practices. Large chapters devote themselves to specific parts of the standard libraries, especially the chapters on GUI programming. Second, most books teaching you a programming language assume you don't know any other language beforehand and teach things from the ground up. And that is often necessary too, because langauges differ in their idioms and in their way of composing programs. A language is not just a language, it is also the standard library, the tooling, the ecosystem, the philosophy.
But is reading a book actually more valuable as opposed to looking up information on the internet when you need it? I had already been programming in Java for a couple of years when I started this book. There were times when I wasted a lot of my time because I had misunderstood a thing or the other about Java. Like one time I struggled with a bug because I didn't know you had to provide a correct implementation of hashCode() for equals() to behave correctly. There were gaping holes in my knowledge of Java, and I hoped that this book would patch them. And except for the 'enterprise' parts of Java, it has done a good job in that. But still the question remains. Should I just have read the relevant parts of the documentation when I wanted to know something? Or used this book as a reference instead of reading it cover-to-cover? I think so. Reading a thousand-page book in this way is not an efficient way of learning a programming language.
Pros: - It does explain Java in a deep way. You get to know not only how, but why things work the way they do - Clear examples, and authors kept them simple enough to follow
Cons: - It is not exactly for beginners. More for people who know another programming language and migrate to Java. Authors assume a certain base knowledge of computer science and programming concepts. So if you are completely new, I wouldn't advise reading this book - I have seen examples, but no exercises. So this more of a reference, than an actual book that is going to teach you how to program
I am a beginner, started Java about a month ago, and after reading all chapters up to Lambda expressions, decided it is not worth spending more time on reading, and focus more on building something. I will keep this book as a reference, and consult as a resource, which is hard to read, but is more digestible than Oracle documentation, and is still thorough.
Maybe after a couple of years, when I have more experience with the language, I will have another opinion, but for a beginner, it is an overkill.
Core Java, Volume 1: Fundamentals by Cay S. Horstmann - is the most advised book by mentors for all android and java developers, and at the same time is the driest literature I have ever read. I believe that the space shuttle flight manual would be easier to read. In addition, I cannot understand what so special about this book as half of the information in it is outdated and useless.
Incredibly detailed overview of the capabilities of the Java language. A bit overwhelming at times, but finds focus with several code examples. I'd recommend Head First Java as your first Java book, but if you're looking for a more contemporary look at the language, this is a great next book.
This was an excellent book on Java. The author has done a fantastic job of explaining complex topics in a clear and concise manner, making it easy for readers to follow along.
The book is well-written and well-organized, with great examples and research that help to reinforce the concepts covered.
Whether you are a beginner or an experienced Java developer, this book is a great resource. It covers all the essential fundamentals of Java programming, making it a great book to learn Java.
I found the book to be very helpful in understanding the basics of Java programming, and I would highly recommend it to anyone who wants to learn Java.
What's great about this book is that it doesn't just cover the basics of Java, but it goes into detail on some more advanced topics as well.
I appreciated the author's approach of starting with the fundamentals and building upon them to help readers gain a deeper understanding of Java programming. I'm definitely looking forward to continuing with the other volumes of the series.
Overall, this was a great book for anyone looking to learn Java or deepen their understanding of Java programming.
I would highly recommend this book to anyone interested in the subject, and I would rate it a solid...
This was the first programming book I've ever read.
I liked it back then, but I didn't like the fact that important concepts like networking in Java were considered to be an "Advanced" topic, while GUI programming was included in the fundamentals book.
But I admit it's a good introductory text to Java and programming in general.
Great book if you are beginner in software development. However if you are experienced withany OOP language fill free to skip most part of the book except several chapters: Collections (Chapter 9), Graphics (Chapters 10, 11, 12, if this theme are related to you), Concurrency (Chapter 14).
Dosy? du?a dawka wiedzy o javie. Napisane w przyst?pny spos¨®b, ale opr¨®cz teorii wa?na jest praktyka. Polecam dla pocz?tkuj?cych i zaawansowanych. B?dzie ?atwiej dla os¨®b, kt¨®re mia?y styczno?? z j?zykami c podobnymi.
This is basically good book. I don't know if I read this as ebook, but code appendix were hard to read and these were just part of code and hard to figure it out how to write.
Although UI is controversial because the Swing part, which I skipped for good, is pretty huge and JavaFX is not elaborated well, overall this is a great book to systematized and deepen knowledge.
The most comprehensive introduction to JAVA! You only need one book as reference, and that¡¯s this one. However, practices are more important than purely reading . Hope you enjoy it!
I was looking for a book to get me moderately familiar with the Java programming language and this isn't it. The authors are *way* too opinionated and keep interrupting the flow of the book to note all the differences between Java and C++.
Perhaps I'm missing the point, but this is a book about Java! I can understand the periodic interlude, but every page has multiple side notes. *Very* distracting.
This is a book of inside jokes and unfortunately I'm just trying to learn Java here.
One of the best language books. The content covers different parts of the Java language from simple things to complex details. I used it during my university Java course and it helped alot, explained everything that regular course left untold. I would recommend it for anyone who started to learn Java.
I didn't read this book front to back. I might be wrong, but I don't think it's meant to be read like that? Maybe it is. If so, then I am not a huge fan of it. But if it's meant to be a reference book, then I really like it :). Lots of good, succinct bits about things you might want to know about the Java language. Also a really good index (for the digital version) for hopping around.