Srikanth Technologies

JAVA SE 9.0 (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/Online Course Fee Rs. 3500/-
Lab Fee Rs. 500/-
Description This course teaches Java language, how to use library, Applets and Swing applications.
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
  • Using printf() method and Scanner class
  • Working with Arrays
  • Varying Arguments
  • Command line arguments

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

Using Java Library

  • String, StringBuffer classes
  • 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.

Interfaces

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

Packages

  • 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
  • Multi-catch and precise rethrow
  • How to use assertions

Multithreading

  • 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
  • Using Threadpool

IO Streams

  • What is an IO stream
  • Character and byte streams
  • FileReader and FileWriter
  • Filtered Streams
  • BufferedReader to read one complete line
  • Using InputStreamReader to convert byte stream to char stream
  • Reading data from keyboard (System.in)
  • Using RandomAccessFile class
  • Using PrintWriter class
  • Using File class
  • NIO of Java 7.0 - Files, Path and Paths classes
  • Serialization

Network Programming

  • Creating Server Socket
  • Creating Client Socket and connecting to server
  • InetAddress class
  • Using URL class

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
  • 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 streams

New Features of Java 9

  • Collection Factory Methods
  • Stream API Improvements
  • Language changes to Java 9
  • jShell
  • Introduction to Java Platform Module System

Swing Applications

  • How to create Frame-based swing applications
  • Components and layout managers
  • Event Handling - Delegation event model
  • Handling events using adapter class and inner classes
  • Swing components - JRadioButton, JList etc.
  • Using Timer, JScrollPane