10 Best Books On Java Programming
https://www.imustread.com/2018/04/best-books-on-java-programming.html
Java has been a favorite programming language of the programmers for a long time now. Being a Java programmer is not an easy job with many still trying to master the language and adding in Java certifications under their belt.
One common question that arises in a Java programmer's mind is.What are the best books on Java? There are a lot of books in this category which the programmers swear by.
Despite the sheer number of freely available Java blogs and tutorials, people still look for good books on Java.
Java books, in general, are written by programmers who have an in-depth knowledge of the subject. Secondly, the subject is often covered in more detail as compared to the stuff you find on the web.
So here is a compilation of the top 10 Java books :
(By: Kathy Sierra )
This book is unique as the information is presented in the visually rich format on the lines of how the brain works and processes information, It can be termed as the best for beginners as it explains the subject in terms of things that you come across in everyday life. The book covers the core language and Object Oriented Programming (OOP) concepts in detail and most importantly it holds the reader’s attention.
Pros: Fantastic illustrations - visually engaging brain-friendly format Covers the latest Java APIs (Java 8) Explanations relate to real-life concepts
Cons: Puzzles and exercises not very realistic
(By: Herbert Schildt )
This book by Herbert Schildt, is regarded as the standard textbook sort of for any Java programmer or student. This is the book you should read after you have gained the little bit of programming knowledge. Origination of Java and its relation with other programming languages is a key concept in the book and explained in the first few chapters. Subsequently, topics like Inheritance and Polymorphism are covered in simple terms, using analogies. There is a simple "hello world" program, used as an example in the book. The book shows us how to compile it and explains the code line by line. There is a self-test at the end of each chapter, where you can test your knowledge.
Pros: Great self-test exercises at the end of each chapter Covers the latest Java APIs (Java 8) Comprehensive at over 700 pages
Cons: Little knowledge of programming is required, not necessarily Java
(By: Cay S. Horstmann )
Core Java is a reference book. As obvious from the title, the book covers core Java very well, with detailed explanations throughout. Each chapter deals with a different aspect of Java. So the first chapter gives you an introduction to the language, the second about the Java programming environment and subsequently moves onto data structures, objects and classes, Inheritance and so on. The chapter on Swing encourages you to make your own desktop-based application and there is a brief chapter on Jars, Applets.
Pros: Detailed explanations throughout Covers collections and generics in great detail Comprehensive at over 1000 pages Covers the latest Java APIs (Java 8)
Cons: You need some experience in programming
(By: Barry A. Burd )
This book is aimed at absolute beginners, the language is straightforward and there is no over usage of technical jargons. The book is split up into five parts. The chapters take you through how to set up your computer, to write your first Java programs using switches, loops, objects, classes, and GUI's. The final part recommends some useful online resources and outlines ten of the most useful classes you'll come across in the Java API. The images and screenshots of this book stand out.
Pros: Great images and diagrams! Covers the latest Java APIs (Java 8) No programming experience required
Cons: Short - not very comprehensive
(By: Nathan Clark )
This book takes you step-by-step through writing you are first-ever Java program with full explanations along the way. There are no less than 57 practical examples in this book, which helps to explain each topic and make it easy to understand. The output of each example is also provided so that you can compare your own results with the model results. This book is short and sweet, it gets straight to the point and is the minimum you require to become a Java developer.
Pros: No programming experience required Lots of practical examples which help explain the concepts
Cons: Not very comprehensive
(By: Walter Savitch , Kenrick Mock )
Absolute Java is aimed as a guide for undergraduate students who have some programming experience but no experience with the Java language. Some of the chapters at the beginning and the end are geared towards beginners. But there are also chapters that look at advanced topics like deep copy vs shallow copy and recursion and the stack for example. If you're looking to take your Java knowledge a bit further, perhaps to an intermediate level, then you should get this book.
Pros: Covers some advanced topics like recursion and the stack Walkthrough of a simple drawing program Chapter on Graphical User Interfaces (GUI's)
Cons: You need some programming experience but not necessarily in Java
(By: Daniel Liang )
The author of this book has focused on a problem-solving and object-oriented approach to teach Java. When you start to read this book, you will learn basic programming concepts like loops, control statements and arrays before you learn object-oriented programming. If you're looking for something in depth, then this book is detailed from beginning to the end, with everything explained at great length. The book is very well organized too in terms of various Java topics.
Pros: Author takes a problem-solving and object-oriented approach to teaching Java Very detailed oriented Bonus chapters covering servlets, web services etc
Cons: Too much detail for beginners Too mathematical in parts The books listed till now were intended for beginners, but the following three books should be on every Java developers bookshelf!
(By: Joshua Bloch )
This book is written by Joshua Bloch, a software engineer formerly employed at Sun Microsystems and Google, who was instrumental in designing and implementing many of the features in the Java Platform. It has been updated to take advantage of the latest language features in Java 7, 8 and 9. The great thing about this book is that each chapter consists of several "items" which are presented in a short, stand-alone essay format that provides you with specific, actionable advice on the Java platform. It also provides information on the subtleties of the Java language, which helps you become a better Java developer.
Pros: Covers not only the "how" but also the "why" Each chapter is easy to digest Shows you all the best practices in Java programming Updated to cover the latest Java APIs
Cons: None
(By: Herbert Schildt )
This book literally has everything in it that you need to master the Java programming language. This book has been fully updated to cover the Java 8 APIs such as lambda expressions, the stream library, and the default interface method. It covers the Java language in detail in terms of the syntax, keywords to the fundamental programming principles. It also covers things like JavaBeans, servlets, applets, and swing and you also get some real-world examples of how these things work in practice.
Pros: Updated to cover the latest Java APIs Huge at over 1000 pages Probably the best reference book Contains real-world examples
Cons: Not for total beginners, very detailed and very comprehensive
(By: Ken Arnold )
This book is a must to read since this book is written by the creators of Java programming language. In this classic book, the authors cover most of the classes in the core Java packages like java.lang.*, java.util and java.io. The first chapter gives you a quick tour of the language if you're unfamiliar with the concepts of object-oriented programming. The following chapters then cover core features of the language such as class declarations, extending classes, how to declare interfaces etc. Later chapters then deal with operators and expressions, generics, exceptions and regular expressions. Towards the end of the book, the authors discuss annotations, reflection, garbage collection and other more advanced topics, which is super useful and not discussed in every book.
Pros: Detailed explanations covering "why" things are the way they are in Java Great examples Topics like annotations, reflection and garbage collection are discussed
Cons: Not up to date with the latest Java APIs
One common question that arises in a Java programmer's mind is.What are the best books on Java? There are a lot of books in this category which the programmers swear by.
Despite the sheer number of freely available Java blogs and tutorials, people still look for good books on Java.
Java books, in general, are written by programmers who have an in-depth knowledge of the subject. Secondly, the subject is often covered in more detail as compared to the stuff you find on the web.
So here is a compilation of the top 10 Java books :
Head First Java
(By: Kathy Sierra )
This book is unique as the information is presented in the visually rich format on the lines of how the brain works and processes information, It can be termed as the best for beginners as it explains the subject in terms of things that you come across in everyday life. The book covers the core language and Object Oriented Programming (OOP) concepts in detail and most importantly it holds the reader’s attention.
Pros: Fantastic illustrations - visually engaging brain-friendly format Covers the latest Java APIs (Java 8) Explanations relate to real-life concepts
Cons: Puzzles and exercises not very realistic
Java: A Beginner's Guide
(By: Herbert Schildt )
This book by Herbert Schildt, is regarded as the standard textbook sort of for any Java programmer or student. This is the book you should read after you have gained the little bit of programming knowledge. Origination of Java and its relation with other programming languages is a key concept in the book and explained in the first few chapters. Subsequently, topics like Inheritance and Polymorphism are covered in simple terms, using analogies. There is a simple "hello world" program, used as an example in the book. The book shows us how to compile it and explains the code line by line. There is a self-test at the end of each chapter, where you can test your knowledge.
Pros: Great self-test exercises at the end of each chapter Covers the latest Java APIs (Java 8) Comprehensive at over 700 pages
Cons: Little knowledge of programming is required, not necessarily Java
Core Java Volume I
(By: Cay S. Horstmann )
Core Java is a reference book. As obvious from the title, the book covers core Java very well, with detailed explanations throughout. Each chapter deals with a different aspect of Java. So the first chapter gives you an introduction to the language, the second about the Java programming environment and subsequently moves onto data structures, objects and classes, Inheritance and so on. The chapter on Swing encourages you to make your own desktop-based application and there is a brief chapter on Jars, Applets.
Pros: Detailed explanations throughout Covers collections and generics in great detail Comprehensive at over 1000 pages Covers the latest Java APIs (Java 8)
Cons: You need some experience in programming
Beginning Programming with Java For Dummies
(By: Barry A. Burd )
This book is aimed at absolute beginners, the language is straightforward and there is no over usage of technical jargons. The book is split up into five parts. The chapters take you through how to set up your computer, to write your first Java programs using switches, loops, objects, classes, and GUI's. The final part recommends some useful online resources and outlines ten of the most useful classes you'll come across in the Java API. The images and screenshots of this book stand out.
Pros: Great images and diagrams! Covers the latest Java APIs (Java 8) No programming experience required
Cons: Short - not very comprehensive
Java: Programming Basics for Absolute Beginners
(By: Nathan Clark )
This book takes you step-by-step through writing you are first-ever Java program with full explanations along the way. There are no less than 57 practical examples in this book, which helps to explain each topic and make it easy to understand. The output of each example is also provided so that you can compare your own results with the model results. This book is short and sweet, it gets straight to the point and is the minimum you require to become a Java developer.
Pros: No programming experience required Lots of practical examples which help explain the concepts
Cons: Not very comprehensive
Absolute Java
(By: Walter Savitch , Kenrick Mock )
Absolute Java is aimed as a guide for undergraduate students who have some programming experience but no experience with the Java language. Some of the chapters at the beginning and the end are geared towards beginners. But there are also chapters that look at advanced topics like deep copy vs shallow copy and recursion and the stack for example. If you're looking to take your Java knowledge a bit further, perhaps to an intermediate level, then you should get this book.
Pros: Covers some advanced topics like recursion and the stack Walkthrough of a simple drawing program Chapter on Graphical User Interfaces (GUI's)
Cons: You need some programming experience but not necessarily in Java
Introduction to Java Programming, Comprehensive Version, 7e
(By: Daniel Liang )
The author of this book has focused on a problem-solving and object-oriented approach to teach Java. When you start to read this book, you will learn basic programming concepts like loops, control statements and arrays before you learn object-oriented programming. If you're looking for something in depth, then this book is detailed from beginning to the end, with everything explained at great length. The book is very well organized too in terms of various Java topics.
Pros: Author takes a problem-solving and object-oriented approach to teaching Java Very detailed oriented Bonus chapters covering servlets, web services etc
Cons: Too much detail for beginners Too mathematical in parts The books listed till now were intended for beginners, but the following three books should be on every Java developers bookshelf!
Effective Java
(By: Joshua Bloch )
This book is written by Joshua Bloch, a software engineer formerly employed at Sun Microsystems and Google, who was instrumental in designing and implementing many of the features in the Java Platform. It has been updated to take advantage of the latest language features in Java 7, 8 and 9. The great thing about this book is that each chapter consists of several "items" which are presented in a short, stand-alone essay format that provides you with specific, actionable advice on the Java platform. It also provides information on the subtleties of the Java language, which helps you become a better Java developer.
Pros: Covers not only the "how" but also the "why" Each chapter is easy to digest Shows you all the best practices in Java programming Updated to cover the latest Java APIs
Cons: None
Java: The Complete Reference
(By: Herbert Schildt )
This book literally has everything in it that you need to master the Java programming language. This book has been fully updated to cover the Java 8 APIs such as lambda expressions, the stream library, and the default interface method. It covers the Java language in detail in terms of the syntax, keywords to the fundamental programming principles. It also covers things like JavaBeans, servlets, applets, and swing and you also get some real-world examples of how these things work in practice.
Pros: Updated to cover the latest Java APIs Huge at over 1000 pages Probably the best reference book Contains real-world examples
Cons: Not for total beginners, very detailed and very comprehensive
The Java Programming Language
(By: Ken Arnold )
This book is a must to read since this book is written by the creators of Java programming language. In this classic book, the authors cover most of the classes in the core Java packages like java.lang.*, java.util and java.io. The first chapter gives you a quick tour of the language if you're unfamiliar with the concepts of object-oriented programming. The following chapters then cover core features of the language such as class declarations, extending classes, how to declare interfaces etc. Later chapters then deal with operators and expressions, generics, exceptions and regular expressions. Towards the end of the book, the authors discuss annotations, reflection, garbage collection and other more advanced topics, which is super useful and not discussed in every book.
Pros: Detailed explanations covering "why" things are the way they are in Java Great examples Topics like annotations, reflection and garbage collection are discussed
Cons: Not up to date with the latest Java APIs
Conclusion
Although reading Java books won't turn you into a programmer overnight, they will definitely help you in terms of the knowledge that you need. Later on, you have to polish your programming skills through practice.
Sunny Chawla is a Marketing Manager at AIS Technolabs, which is Java web development company, helping global businesses to grow in the online market. He would love to share thoughts on Application Development and Digital marketing.
Twitter ,Facebook ,Linked In