PLEASE NOTE: This course is quite old now (Java 7). I do not have time to update it. However, many students have found it useful in the past to learn things the way I taught them, practically. So please go ahead if you want to learn only the very basics of Java but want to get deeper insights into the language.
All tutorials are practical sessions where complete insight is provided into each topic being covered. Practical examples of how the various concepts are used to create solutions to real-world problems are included in the course. I have tried to teach the language in such a manner that the learner would get very deep insight into the very core concepts of the language. At each step, I have used the debugging options to demonstrate what happens to various objects and variables, internally, as processing proceeds through a program.
Even though Java has evolved much further than the concepts covered here, the core ideas presented in this course would still help beginners understand the internals of the Java programming language well. It is only due to some good reviews and feedback from the past students that I have not deactivated the course yet.