Evolution of Java. Relation between C and C++. Impact of the Internet and World Wide Web on Java. Java buzzwords. Object-oriented from the start. Data types, variable declaration. Arrays and multidimensional arrays. Array as part of Non-primitive data types. Control statements like if and switch. Looping constructs. for loop. while loop and do-while loop. Difference between while and do-while loops. The alternative for loop namely the for each loop. Passing arguments. Pass by value vs pass by reference
break and continue statement in Java. Exiting out of a loop using break statement. Java Strings. Using the + operator to concatenate two or more strings. Java Type casting. Java method overloading. Different number of arguments or differing types of arguments. A program on Command Line arguments
Classes and objects in Java. An object as an instance of a class. The object-oriented features. Encapsulation, Inheritance and Polymorphism. Role of constructors in Java. How constructors are called in a multilevel class hierarchy. Methods in classes. Access specifiers like public, private, default and protected in Java . Constructor overloading in Java. Inheritance in Java. Runtime polymorphism in Java. Static variables and methods. The ultimate base class Object in Java. All other classes being the subclasses of Object. Using super keyword. Creating a multilevel hierarchy. The concept of interfaces in Java. How interfaces are useful to implement multiple inheritance in Java.
Exception handling in Java. The syntax of the try-catch block. The finally block in exceptions. Built-in exceptions vs user-defined exceptions. Multithreaded programming in Java. Creating threads by implementing the Runnable interface as well as extending the Thread class. Interthread / inter-process communication. Enumerations. Autoboxing / Unboxing. Annotations in Java. Java I / O Basics. Java FileInputStream Classes.