Object Oriented Design of Software through Java

Learn OOPs programming in an easy but comprehensive way using Java Language. Advance your Java programming skills and learn to write practical industry standard object oriented software and charge your career.

Lifetime course access

Live instructor-led online classes

Industry-based projects

Object Oriented Design of Software through Java

E-box Job Assistant

Get noticed by the top hiring companies

Amphi - The Super teacher
Guide from “Amphi”

The Super teacher


  • 6 hours of lecture Videos
  • 149 hands-on practice exercises
  • 20 Assessment exercises
  • 43 code analysis exercises
  • 427 knowledge based questions
  • 10 Live connect sessions
             (Master classes)
  • Lifetime access

Object Oriented Design of Software through Java


This course helps you to understand the concepts of object-oriented programming. The course covers introductory elements of object-oriented programming including inheritance, polymorphism, encapsulation, abstraction, aggregation and advanced concepts like error handling, file handling and Multi-threading.


Upon successful completion of the course, the learner will be able to :
  • Provide class representation for the identified object
  • Select right data types for the member variables
  • Use appropriate control statements and operators to implement business rules
  • Handle exceptions with predefined and user-defined exceptions
  • Overload and override methods for polymorphism implementation
  • Compare and Contrast "Interfaces" and "abstract classes" and adopt using them on demand
  • Read and write from/into a file using IO API
  • Use Collections to store and manipulate data
  • Perform Multithreading operations
  • Store and retrieve data from MySQL database using JDBC concepts
  • Adhere to Java Coding standards
  • Model class diagram
  • Code using Three-layer architecture
  • Understand OOAD techniques

Course Content

Classes and Objects

Welcome! In this module, you will be introduced to Classes and Objects which are the basic concepts of any Object-Oriented Programming language. You will be learning from modeling a real-time entity to create a programming model for real-world entities.

  • 3 Videos
  • 4 Hours
  • 81 Problems

Collections I

In real-world scenarios, we always work with a group of objects/data together. Collections framework in Java provides various data structures to use while enhancing the performance on the whole. In this module, you will be learning from a basic collection like the list to set, map and also learning how to implement them.

  • 1 Video
  • 3 Hours
  • 48 Problems


By this time you will be familiar with classes and objects. Any real-life entity would have a dependency or ownership over other such entities. Java helps you in modeling such relationships. In this module, you will be learning how to model a relationship between two classes/objects, the types of relationships.

  • 2 Videos
  • 3 Hours
  • 43 Problems


Inheritance is a prime factor in Object-Oriented Programming which accounts for code reusability. Inheritance falls into the category of Is-A relationship. In this module, you will be learning inheritance and its types and also in the process, understanding where you must apply an inheritance paradigm in your application.

  • 3 Videos
  • 3 Hours
  • 58 Problems

Abstract and Interface

In this module, you will be learning about abstract classes and interfaces.These OO concepts are extension to inheritance, helping to model various design constraints into better implementations.

  • 2 Videos
  • 4 Hours
  • 51 Problems

Exception Handling

Exceptions are unwanted errors that interrupt the normal flow of execution. Exceptions & Errors are part and parcel of any application. Java provides a way to handle the exceptions and ensure smooth functioning of your applications.In this module, you'll be learning about exception and how to handle them.

  • 1 Video
  • 4 Hours
  • 46 Problems


Multithreading is a feature that enables concurrent execution of lightweight sub-processes. In current scenarios, need for the multi-threaded environment is increasing due to the enormous amount of data stored in any application.This module would focus on helping you to understand about creating a multi-threaded environment for an application and how to implement them.

  • 1 Video
  • 3 Hours
  • 40 Problems

String / StringBuffer / StringTokenizer

Strings are important concepts for any programming language. There won't be any application without involving String manipulation. Several API methods are available in String class for easy implementation. In this module, you will be learning about String, StringBuffer and StringTokenizer, their differences and implementation.

  • 3 Videos
  • 4 Hours
  • 72 Problems

Collections II

In the earlier module, we learned about the collection, their types, and basic functionality. But that is not all about Java collections. Java has many more API methods for performing various functions in these collections. Also, there is comparator and comparable interfaces to define the ordering of these collections. This module will help you understand about comparator and comparable interfaces and implementation various nested collection objects for easy storage and retrieval of data.

  • 1 Video
  • 5 Hours
  • 55 Problems

Streams and Writers

In this module you will learn about the different streams and writers which are available in Java API. By now you would be familiar about BufferedReader and Scanner which is used to get console input. But there are many other stream readers and writes in java including reader and writer for files. File reading & writing forms an integral part of any application. From simple logging to storing Objects & Content, file processing plays a key role. Java has very well crafted API structure for File Processing.

  • 2 Videos
  • 3 Hours
  • 44 Problems

Annotations / Lambda Expressions

In this module you will be learning about Annotations and Lambda expressions. Annotation is a form of syntactic metadata that can be added to Java source code used by Java compiler. Lambda expressions are similar to closures, in simple terms a kind of anonymous methods.

  • 2 Videos
  • 2 Hours
  • 41 Problems


When you create applications, we may need to store data. Java Database Connectivity is very useful for connecting our Java application with various databases. It provides means to read, write and modify data in various databases like MySQL, MS SQL, etc.This module will help you in understanding about JDBC drivers, databases and various API methods to read/write data from database.

  • 2 Videos
  • 5 Hours
  • 60 Problems

Get in Touch with Us

Achalpreet - 8826698674



#2462, Sugamya corner
High Tension Line road,
2nd stage, Vijayanagar,
Mysuru - 570017

Electronic City, Bangalore

"VARAM" #228, 2nd Cross Neeladri Nagar
Electronic City,1st phase
Bangalore - 560100


123 to 127, kattoor Street
Coimbatore - 641037

About E-Box

E-Box is a Technology Enabled Active Learning and
Assessment platform for technology and engineering
domains apart from the basic LMS components like
quizzes, assignments, lesson components.

Connect with us