Title: Brewing Java: A Tutorial
Author: Elliotte Rusty Harold
License Detail: N/A
Java is an object oriented programming language. It lets you do almost anything you can do with a traditional programming language like Fortran or C++.
However Java has learned from the mistakes of its predecessors. It is considerably cleaner and easier to use than those languages. Java has the bare bones functionality needed to implement its rich feature set. It does not add lots of syntactic sugar or unnecessary features.
As the name of the book says that it is tutorial, it justifies it as well. It tutors you well in Java. It is a comprehensive introduction to Java for intermediate level programmers. Though it defines the concept well, it covers Java language with a practical approach that is by coding.
Some other great books on Java:
The introduction starts with explaining classes through complex numbers which is fairly new approach. It covers the Java language from the ground up as well as the AWT including threads, layout managers, exceptions, event handling, data structures, Linked lists, Sparse arrays, Working with Strings, Java Tokens, Java Data types, Bitwise operators, Calling Native Code etc.
It helps intermediary Java programmer to level up to advanced.