Object Oriented Programming

This course introduces the fundamentals of Object-Oriented Programming (OOP) in Java, focusing on classes, objects, and the four pillars: abstraction, encapsulation, inheritance, and polymorphism. Students will learn how to build modular, reusable code and apply OOP concepts to solve real-world problems effectively.

No Certificate / Course on Audit Track

About Course

This course provides a comprehensive introduction to Object-Oriented Programming (OOP) using Java. It focuses on the core concepts of classes and objects, along with the four fundamental pillars: abstraction, encapsulation, inheritance, and polymorphism. Learners will explore how these principles help in designing efficient, modular, and reusable code. Through practical examples, the course enables students to model real-world problems and enhance their programming and problem-solving skills.

Authorship and Attribution
This course has been curated by Riphah International University faculty and staff using publicly available third-party content and Open Educational Resources (OER) for self-paced learning. Learners will engage with curated open-access materials to achieve the course learning outcomes. All third-party content is used under open-access or fair-use policies, while any original materials are developed specifically for this learning experience.   Source and Credits:
  • Instructor: Learn Coding
  • Provider: YouTube (@LearnCodingOfficial)
  • License: Standard YouTube license
Source and Credits:
  • Instructor: Neeraj sharma – Java Training | MetazoneUniversity)
  • Provider: YouTube (@mz.neerajsharma)
  • License: Standard YouTube license
Source and Credits:
  • Instructor: CodeWithHarry
  • Provider: YouTube (@CodeWithHarry)
  • License: Standard YouTube license
Source and Credits:
  • Instructor: Smart Programming
  • Provider: YouTube (@SmartProgramming)
  • License: Standard YouTube license

What You'll Learn

By completing this course, you will be able to:

  • Understand principles of object-oriented paradigm 
  • Identify the objects & their relationships to build object-oriented solutions 
  • Develop object-oriented solutions for small systems 
  • Use appropriate programming environment to code and debug OO applications

Prerequisites

To be successful in this course, learners should have:

  • Basic understanding of programming concepts (variables, data types, operators)
  • Knowledge of control structures (if-else, loops)
  • Familiarity with functions or methods
  • Understanding of basic input/output operations
  • Experience with at least one programming language (C, C++, or Java)
  • Basic problem-solving and program design skills
  • No prior OOP knowledge required (covered from fundamentals)

Who Can Take This Course?

Skills You Will Gain:

To be successful in this Object-Oriented Programming (OOP) course, learners should have a basic understanding of fundamental programming concepts such as variables, data types, operators, control structures (if-else, loops), functions or methods, and basic input/output operations. Familiarity with at least one programming language, such as C, C++, or basic Java, is recommended to understand syntax and logic building. A general understanding of problem-solving techniques and simple program design will be helpful, although prior experience with OOP concepts is not mandatory, as the course will begin with foundational principles before progressing to advanced topics.

Course Outline

Introduction to OOP

Java Basic OOP Concepts | Features of OOPs in Java | Learn Coding (Video)

Class and Object

Class and Object in Java | Learn Coding (Video)

Methods and Instance Variables

Method Overloading in Java | Learn Coding (Video)

Encapsulation Concept

Encapsulation in Java | Learn Coding (Video)

Access Modifiers (public, private, protected)

Access modifier and Control in java | With examples (Video)

Getter and Setter Methods

Access modifiers, getters & setters in Java (Video)

Introduction to Inheritance

Inheritance in Java | What is Inheritance? full Explanation (Video)

Super Keyword

Super Keyword in Java | Learn Coding (Video)

Abstract Classes

Abstract Class in Java | Learn Coding (Video)

Interfaces

Interface in Java | Learn Coding (Video)

Association, Aggregation, Composition

Inheritance (IS-A), Association (HAS-A), Aggregation & Composition – Relationship in Classes Java (Video)

Exception Handling

Exception Handling in Java | Arithmetic Exception (Video)

Try-Catch-Finally

Try Catch Finally block in java | Learn Coding (Video)

File Handling in Java

File Handling in Java | Java program to create a File (Video)

Skills You Will Gain

OOP Fundamentals Java Programming Skills Class Object Design Encapsulation Techniques Inheritance Implementation Abstraction Principles Exception Handling Skills File Handling Basics

Course Information

Duration

Approximately 3 Hour

Course Information

Difficulty Level

Intermidiate

Learning Mode

Fully Online (Asynchronous)

Learning Type

Self Paced

Language

Both English & Urdu

Instructor/Curator

Course Instructor