Java is a technology which covers almost all the programming domains. You can develop console applications, GUI applications, web applications, server applications, mobile applications, cloud application, etc. Java comes with many flavors to fulfill the requirements of each of the programming domain. Java SE and Java EE are the two most appealing flavors among students. One should begin with Java SE (standard edition) in order to explore Java world.
One must know basics of programming and object oriented concepts to learn Java. We recommend you to learn C and C++ before Java
Introduction, Installation and setup, constant, variables, keywords, data types, conversion rules, control statements, classes and objects, static members, wrapper classes, command line arguments, packages, user input, access modifiers, constructors, initializers, inheritance, final, this, super, constructor in inheritance, constructor chaining, Overloading and overriding, abstract class, abstract methods, interface, arrays, strings, Object class, Garbage collection, Exception handling, Threading, file handling, GUI programming, AWT,Swing,JDBC
Only after completing JAVA SE, you will be able to learn other flavors of Java including JAVA EE (Advanced Java) and Android. You will be able to develop console based and GUI application in Java.