Introduction to Java, a brief history of java, comparison with C++, scenarios where java is used, JDK, JRE & JVM definitions. 30 mins
OOPS concepts in java(Abstraction, Encapsulation, Inheritence & Polymorphism). A basic class & interfaces to explain these concepts and difference with C++. 1.5 hour
Explain java packages, data types(Enums) using a simple program. 30 minutes
Lamdas, streams and functional programming concepts in java. 1.5 hours
Build and Dependency Management in java using Maven. 30 minutes
Basics of Threads in Java and synchronization(if time permits). 30 minutes
Java Generics introduction and difference with C++ Template coding. Introduction to the Collections framework. 1 hour
Java Annotations(if time permits) 30 minutes
Memory Management in Java. Explain about Object creation process, Stack, Heaps etc. and Java Garbage Collection. 1 hour
Exception handling in Java, including why should we handle exceptions in Java. 30 minutes
Input/Output and Serialization concepts. - Reading
Basics of Web Application, Client and Server.
Basic of Web application container setup using Tomcat.
Servlets in Java & their lifecycle, request forwarding and request redirection.
JSPs and Filters, including their usages.
Session Management & Cookies.