Srikanth Technologies

JAVA SE (Core Java) Course Details

This course teaches Java Language and Java library. This is the first step in learning how to use Java to build business applications.

After completing this course one must take Java EE course to learn how to build web applications using Java EE.

Prerequisite C Language
Theory Fee (Classroom) Rs. 5000/- (Includes digital course material)
Theory Fee (Online) Rs. 5000/- (Includes digital course material)
Digital or Physical Certificate Fee Rs. 200/-
Description This course covers Java language comprehensively and how to use Core Library
Softwares Required

Java Language Fundamentals

  • Editions of Java
  • Features of Java
  • Hello World program in Java
  • Using JAVAC to compile and run Java program
  • Data types and control structures
  • Enhancements of switch in Java 12
  • Local variable type inference
  • Using printf() method and Scanner class
  • The switch expression
  • Working with Arrays
  • Varying Arguments
  • Command line arguments
  • Working with jShell

Object Oriented Programming

  • What is OOP - encapsulation, inheritance, and polymorphism
  • How to create a class and instantiate objects
  • Using Constructors
  • Method overloading and constructor overloading
  • Object reference and this reference
  • Static variables and static methods
  • Final variables
  • Inheritance
  • Using super keyword
  • Dynamic Method Dispatch - late binding
  • Abstract method and class
  • Final variable, method and class
  • Sealed classes
  • Records

Using Java Library

  • String, StringBuffer classes
  • Compact string
  • Math class
  • How Java deals with Objects and Primitive types
  • Object class - why to override toString(), equals() and hashCode() methods
  • Wrapper classes - Autoboxing and autounboxing
  • Date, Calendar, DateFormat classes
  • LocalDate, LocalTime, DateTimeFormatter, ChronoUnit etc.


  • What is an interface
  • Implementing an interface
  • Default Methods and Static methods in Interface
  • Inheritance and interfaces
  • Private methods in interface


  • What is a package and how to create it
  • Using package, import statement and CLASSPATH variable
  • Access modifiers
  • Static imports
  • Enumeration

Exception Handling

  • How to handle exceptions in Java - try and catch blocks
  • Understanding exception classes hierarchy
  • The finally block
  • Creating user-defined exceptions
  • Using throws and throw keywords


  • What is Multithreading?
  • Creating new thread using subclass of Thread class
  • Creating new thread using Runnable interface
  • Methods of Thread class
  • Life cycle of a thread
  • Synchronization of threads - using synchronized methods and block

IO Streams

  • What is an IO stream
  • Character and byte streams
  • FileReader and FileWriter
  • Using try with resources - ARM
  • Filtered Streams
  • BufferedReader to read one complete line
  • Using InputStreamReader to convert byte stream to char stream
  • Reading data from keyboard (
  • Using RandomAccessFile class
  • Using PrintWriter class
  • Using File class
  • NIO - Files, Path and Paths
  • Serialization

Network Programming

  • Creating Server and Client Sockets
  • How to use URL class to access Internet

Collections Framework and Regular Expressions

  • Collection, List, Set and SortedSet interfaces
  • How to use Generics
  • ArrayList, Vector, HashSet, TreeSet classes
  • How to use Comparator interface
  • Queue interface and LinkedList class
  • Map and SortedMap interfaces
  • HashMap and TreeMap classes
  • Using Collections class
  • Using factory methods
  • What is Regular Expression
  • Using Pattern and Matcher classes

Lambda Expressions and Streams

  • What is a lambda expression
  • Method reference
  • Using built-in functional interfaces
  • What is a stream?
  • How to get a stream from Collection, File, Array etc.
  • Using methods of Stream
  • Terminal and non-terminal operations on streams