Java Programming Unleashed
Track Software Development
Duration 90 hours
Skill Level Advanced
Language English

About this Course

Master Java syntax, OOP, and application building with hands-on projects.
Learning Mode: Learn at ALC or at Home

Detailed Course Curriculum

Hands-on module breakdown aligned with MKCL production standards and industry requirements.

  • Why should you learn Java?
  • Prerequisites for this course
  • What are you going to learn?
  • Introduction to programming languages
  • Installing Java Development Kit (JDK)
  • JDK, JRE and JVM
  • Importance of Java in the context of Internet
  • Features of Java
  • Object Oriented Programming Paradigm (OOP)
  • Relationship between classes and objects
  • Features of OOPs - Encapsulation and Inheritance
  • Features of OOPs - Abstraction and Polymorphism
  • Data types in Java - Integers, floating-point, characters, Boolean
  • Concept of variables, their declarations
  • Literals - Integer, floating-point, character, Boolean, strings
  • How to Write java code, compile and execute?
  • Explanation of System class and printing method
  • First Java Program using Notepad
  • Explanation of important terms like main(), public, void, static
  • Comments in Java
  • Understanding command line arguments
  • Sample program of command line arguments
  • Using parseInt() with command line arguments
  • Using parseFloat() with command line arguments
  • Introduction to IDEs
  • Components of Netbeans
  • Creating a project in Netbeans
  • Exporting & importing projects
  • Intro to Eclipse IDE
  • Intro to IntelliJ IDE
  • Online IDEs
  • First Java Program using NetBeans
  • Second Java program in NetBeans
  • Understanding concatenation
  • Coding examples of concatenation
  • Using Command Line arguments in Java program written in NetBeans
  • Reading values from keyboard using Scanner class object
  • Tricks to prevent the skipping of String input value
  • Implicit type casting
  • Explicit type casting
  • Sample programs
  • Formatting output using printf()
  • More about formatting output
  • Formatting dates
  • Operators in Java
  • Precedence and associativity of operators
  • Examples of precedence and associativity
  • Sample programs illustrating usage of arithmetic operators
  • Sample programs illustrating usage of relational operators
  • Sample programs illustrating usage of logical operators
  • Sample programs illustrating usage of unary operators
  • Sample programs illustrating usage of ternary operator
  • Compound assignment operators with sample programs
  • Programming Construct Sequence
  • Sample programs of sequence
  • if statement
  • Sample programs of if
  • if else if ladder
  • Sample programs of if else if ladder
  • Nested if
  • Sample programs of nested if
  • Overview of switch case construct
  • Sample programs of switch case
  • Difference between if and switch case
  • Practice program - Switch Case - To find out salary of employee
  • Basics of loops and while loop
  • sample programs of while loop
  • while loop pre-tested property
  • Basics of do…while loop
  • while loop post-tested property
  • Basics of for loop
  • Sample programs of for loop
  • for loop pre-tested property
  • More features of for loop
  • Infinite loops
  • Using break statement
  • Using continue statement
  • Practice program - Factorial
  • Practice program - Reverse a number
  • Practice program - Palindrome number
  • Practice program - Armstrong number
  • Practice program - Prime number
  • Practice program - Biggest among n numbers
  • Practice program - finding the square roots of a range of numbers
  • Practice program - finding the power of numbers
  • Practice program - generating Fibonacci series
  • Practice program - printing ASCII set
  • Practice program - Number guessing game
  • Introduction to nested loops
  • Second sample program of nested loops
  • Third sample program of nested loops
  • Fourth sample program of nested loops
  • Fifth sample program of nested loops
  • Practice program - Printing multiple tables
  • Practice program - Asking the user whether to continue printing factorials
  • Practice program - Asking the user whether to continue printing tables
  • Explanation of Integer methods - compareto, toString, valueOf
  • Programs of compareTo, toString, valueOf
  • Explanation of Integer methods - doubleValue, floatValue, equals
  • Programs of doubleValue, floatValue, equals
  • Explanation of Integer methods - Signum, Min, Max, parseInt
  • Programs of Signum, Min, Max, parseInt
  • Explanation of Integer methods - intValue, sum
  • Programs of intValue, sum
  • Explanation of float methods - compareTo, toString
  • Programs of compareTo, toString
  • Explanation of valueOf, doublevalue, equals, parseFloat
  • Programs of valueOf, doubleValue, equals, parseFloat
  • The basic concept of arrays
  • Declaring an array dynamically using two methods
  • Traversing array elements
  • Array name-reference to the array
  • Using for each format of the for loop
  • Merging two arrays
  • Getting the absolute values of array elements
  • Array of strings
  • Linear Search Logic and algorithm
  • Linear search program
  • Logic of Binary search
  • Algorithm of binary search
  • Program of binary search
  • Flow of Logic of Bubble sort
  • Algorithm of bubble sort
  • Bubble sort program
  • Flow of logic of selection sort
  • Algorithm of selection sort
  • Selection sort program
  • Using sort method of Array class
  • Basics of double dimensional arrays
  • First sample program of 2-D arrays
  • Second sample program of 2-D arrays
  • Third sample program of 2-D arrays
  • 2-D arrays with different number of columns
  • Matrix addition - logic and algo
  • Program of matrix addition
  • Logic of matrix multiplication
  • Algorithm of matrix multiplication
  • Program of matrix multiplication
  • Basics of functions
  • Components of a function
  • Understanding actual & formal parameters - explanation
  • Understanding actual & formal parameters - sample program
  • Second sample program
  • To return or not to return a value - sample programs
  • Scope of variables in functions
  • Facts about return statement
  • Passing an array to a function - Explanation
  • Passing an array to a function - example code
  • Getting average age in an array
  • Returning array reference
  • Basics of recursion
  • Basics of stacks
  • Algo to push into a stack
  • Algo to pop from a stack
  • Factorial program through recursive function
  • Practical coding of classes and objects
  • Area of rectangle
  • Area of circle
  • Hospital billing
  • Income tax calculation
  • Creating an object within the class itself
  • Array of references to objects - Company employees’ example
  • Array of references to objects - Exam result example
  • The concept of null reference
  • Assigning reference to another reference variable
  • Automatic Garbage Collection
  • Method Overloading (Compile-time polymorphism)
  • Method overloading - Rainfall recording data
  • Constructors in Java
  • Default constructors
  • Constructor overloading
  • Constructor overloading - contd.
  • Documentation comments
  • this keyword
  • Basics of getters and setters
  • Using getters and setters for Office_rooms class
  • Automatic creation of setter getter code
  • Generating setters and getters for Pet_dogs class
  • Generating setters and getters for Pet_dogs class
  • static members of a class
  • Counting number of objects - static members
  • Basics of Packages
  • Access specifiers (Visibility modes) in Java
  • Understanding default and private members practically
  • Same package classes in different programs
  • same package classes in different programs - contd.
  • Working in different packages
  • usage of import keyword of Java
  • usage of import keyword of Java - contd.
  • Method signatures
  • Creating abstract classes
  • Abstract class Trainers
  • The basics of interfaces
  • Practical coding of interfaces
  • Interface for areas and circumference
  • An interface extending another interface
  • Introduction to Inheritance
  • Syntax of applying inheritance and Method overriding
  • Writing the Java code for Inheritance
  • Multi-Level inheritance
  • Behaviour of constructors in inheritance
  • Practical example of constructors without arguments in inheritance
  • Practical example of constructors with arguments in inheritance
  • Final classes
  • Final methods
  • Assigning reference of sub-class object into super class reference variable
  • Abstract methods
  • Basics of Polymorphism
  • Practical implementation of Polymorphism
  • Basics of exception handling
  • Uncaught exceptions
  • Catching exceptions using try …. catch blocks
  • Printing Exception Class Reference Variable
  • Multiple catch blocks
  • calling a method from within try block
  • calling a method from within try block - Execution
  • Using super class Exception
  • Handling NullPointerException
  • Handling NumberFormatException
  • throw: throwing an exception manually
  • throws: handling checked exceptions
  • Nested try block
  • Introduction to data structures
  • Basics of Collections and ArrayList traversal using Iterator interface
  • Traversing ArrayList elements using for each loop
  • Storing user-defined objects and retrieving them using Iterators interface
  • Storing user-defined objects and retrieving them using foreach loop
  • Storing and retrieving objects of nations’ capitals
  • Using toArray() method of ArrayList class
  • Basics of linked lists
  • Explanation of logic of traversal of nodes using algorithm
  • Programs of LinkedList Collection
  • Programs of stacks
  • Basics of trees
  • Adding numeric elements in a TreeSet
  • Adding string elements in a tree TreeSet
  • Removing an element from a TreeSet
  • Searching an element from a TreeSet
  • Basics of queues
  • Explanation of insertion operation of a queue using algorithm
  • Explanation of deletion operation of a queue using algorithm
  • Programs of queues
  • ListIterator interface - Traversing collection elements in both directions
  • Using sort method of Collections class
  • Sorting user-defined objects
  • Hashset explanation and example
  • Hashset with numeric values
  • Applying size and contains methods of HashSet class
  • Applying remove() method of HashSet class
  • Applying clear() and isEmpty() methods of HashSet class
  • LinkedHashset class
  • Basics of strings in Java
  • Important String class methods
  • Comparing two strings
  • Printing an object using toString() method
  • StringBuffer & StringBuilder classes
  • Finding length without using an in-built function
  • Explanation of isletter, isDigit, isWhitespace, isUpperCase, isLowerCase
  • Programs of isLetter, isDigit, isWhitespace, isUpperCase, isLowerCase
  • Explanation of toUppercase, toLowercase, toString
  • Programs of toUppercase, toLowercase, toString
  • Explanation of reverse and delete methods
  • Programs of reverse and delete methods
  • Explanation of Insert, compareTo, compareToIgnoreCase
  • Programs of Insert, compareTo, compareToIgnoreCase
  • Explanation of getBytes, getChars(), lastindex, matches
  • Programs of getBytes, getChars(), lastindex, matches
  • Explanation of split, subSequence, valueOf
  • Programs of split, sunSequence, valueOf
  • Explanation of join, contains
  • Programs of join and contains
  • Basics of MultiThreading
  • Implementing Runnable interface for Multithreading
  • Extending Thread class for Multithreading
  • Thread Names, Priorities, the parent thread
  • Method main as a thread
  • Anonymous inner classes
  • LAMBDA expressions
  • Introduction to DBMS & Databases
  • Creating a Database and Table using MySQL Workbench GUI
  • Creating a Database and Table at the command prompt
  • Issuing SQL statements on Command prompt
  • Alter table queries
  • Indexes
  • Constraints
  • Basics of JDBC & its architecture
  • Steps for JDBC coding
  • Coding a JDBC program for SQL statement Select
  • Coding a JDBC program for SQL statement Insert
  • Coding a JDBC program for SQL statement delete
  • Coding a JDBC program for SQL statement update
  • Basics of streams
  • Using BufferedReader and InputStreamReader classes
  • Reading from a file
  • Writing on a file
  • Copying the content of a file into another
  • Using BufferedReader class to read files
  • Serialization of objects
  • Deserialization of objects
  • Basics of Java Applets
  • Writing your first applet and understanding life cycle
  • Working with colors and fonts
  • Passing parameters to an applet
  • Passing parameters to an applet - execution
  • First Applet in Netbeans
  • Drawing figures
  • Basics of event handing
  • Handling mouse events
  • AWT Controls
  • Using Fonts and Colours in AWT Controls
  • Positioning AWT Controls by setBounds() method
  • Handling Button events
  • Handling Checkbox events
  • Handling Radio button events
  • Handling Scrollbar Events
  • Handling List Events
  • First Example of an Applet form project
  • Using AWT Controls from Palette Box
  • Autogenerated Code
  • Handling Button events through Applet forms
  • Handling Checkbox events through Applet forms
  • Handling Choice events through Applet forms
  • Differences between Applets and Frames
  • First Example of a Frame
  • Getting more comfortable - Another example of a Frame
  • Second Example of a Frame - Execution
  • Changing the Title and Size of a Frame Window
  • Changing the background color of a Frame window
  • Basics of Swings & differences from Applets
  • First sample program of swings
  • Using setBounds() and setFonts() with swing controls
  • Using JCheckBox class object
  • Creating a tree structure using JTree class object
  • Handling events of JButton objects
  • Handling events of JCheckBox object
  • Handling events of JRadioButton objects
  • First Sample swing Program in Netbeans
  • Using Swing controls in JApplet project
  • Event Handling in JApplet
  • Using JOptionPane class for message dialog boxes
  • First sample JApplet Form swing
  • More stuff on JApplet Form swings
  • First Example program of JFrame Project
  • Working with DateChooser
  • Creating a MenuBar - Menu objects, MenuItem Objects
  • Handling Events of MenuItems
Eligibility Criteria
• Basic knowledge of computers and keen desire to build skills in this field.
• Open to students, job seekers, and working professionals.
Official Certification
• Official MKCL KLiC Certificate upon successful completion of the course and evaluations.
Work-Centric Learning Approach
• Step 1: Learners are given an overview of the course and its connection to life and work
• Step 2: Learners are exposed to the specific tool(s) used in the course through the various real-life applications of the tool(s).
• Step 3: Learners are acquainted with the careers and the hierarchy of roles they can perform at workplaces after attaining increasing levels of mastery over the tool(s).
• Step 4: Learners are acquainted with the architecture of the tool or tool map so as to appreciate various parts of the tool, their functions, utility and inter-relations.
• Step 5: Learners are exposed to simple application development methodology by using the tool at the beginner’s level.
• Step 6: Learners perform the differential skills related to the use of the tool to improve the given ready-made industry-standard outputs.
• Step 7: Learners are engaged in appreciation of real-life case studies developed by the experts.
• Step 8: Learners are encouraged to proceed from appreciation to imitation of the experts.
• Step 9: After the imitation experience, they are required to improve the expert’s outputs so that they proceed from mere imitation to emulation.
• Step 10: Emulation is taken a level further from working with differential skills towards the visualization and creation of a complete output according to the requirements provided. (Long Assignments)
• Step 11: Understanding the requirements, communicating one’s own thoughts and presenting are important skills required in facing an interview for securing a work order/job. For instilling these skills, learners are presented with various subject-specific technical as well as HR-oriented questions and encouraged to answer them.
• Step 12: Finally, they develop the integral skills involving optimal methods and best practices to produce useful outputs right from scratch, publish them in their ePortfolio and thereby proceed from emulation to self-expression, from self-expression to self-confidence and from self-confidence to self-reliance and self-esteem!

Ready to start Java Programming Unleashed?

Join our upcoming batch at ZICA Kalyani center with certified instructors.