Welcome to CSC 303_2024
CSC 303 Object Oriented Programming Through Java
Instructor: Prof. Moussa M.Bukar
Class Agenda
Course Syllabus
Introduction to Course
Course Syllabus Overview
Weekly Topics
Week 1: Course Introduction
Week 2: Basics of Java Programming, Environment, etc.
Week 3: Data Types, Variables, Operators in Java
Week 4: Control Structures (Selection, Looping)
Week 5: Java Methods, Method Overloading, Overriding
Week 6: Arrays and Strings in Java
Week 7: Object and Class
Week 8: Midterm Exam
Week 9: Inheritance and Polymorphism in Java
Week 10: Encapsulation and Abstraction in Java
Week 11: Multithreading in Java
Week 12: Java Interface
Week 13: GUI Programming
Week 14: Lecture Free / Review
Week 15: Final Exam
Introduction to OOP
Object-oriented programming (OOP) is centered around objects and data rather than actions or logic.
OOP focuses on objects that represent real-world entities, emphasizing properties and behaviors.
Definition of OOP
Object-Oriented Programming is a methodology for designing programs using objects and classes.
The terminology emphasizes 'Object' over 'Class'.
Classes and Objects
Class
A class is a blueprint that defines data and behavior; it consists of methods and variables.
Example: Human Being as a class with properties and actions.
Object
An object is an instance of a class.
Example: "My name is Aliko, an instance of class Man."
OOP Pillars
Inheritance: Allows classes to reuse properties of other classes.
Example: Classes Man and Woman inherit from class Human Being.
Abstraction: Hides complex implementation details and shows only necessary features.
Example: Human actions are defined without detailing muscle mechanics.
Encapsulation: Hides unnecessary details from the user.
Example: Phone calling process is abstracted for user simplicity.
Polymorphism: Redefines functionalities through overloading and overriding.
Overloading: Multiple ways to perform an action (walking with hands).
Overriding: Changing the way a predefined method works (custom walking style).
Questions?
Open for discussion and inquiries.