Object-Oriented Software Engineering with Java
- Development
- May 11, 2025

Object-Oriented Software Engineering with Java, available at $84.99, has an average rating of 4.9, with 27 lectures, 12 quizzes, based on 208 reviews, and has 1017 subscribers.
You will learn about Build classes and creates objects using Java to promote code reuse Build a large software using inheritance, abstract classes, encapsulation, polymorphism, and Interfaces Recognize object-oriented concepts for large software development Solve advanced software development problems using Object Oriented concepts Develop and use generic classes to promote software reuse Use effective tools for Java project management (Netbeans, GitHub) This course is ideal for individuals who are Beginner/Intermediate Software Developers or Software Engineering Students or Computer Science Students or Information Systems Students or Beginners Java Developers It is particularly useful for Beginner/Intermediate Software Developers or Software Engineering Students or Computer Science Students or Information Systems Students or Beginners Java Developers.
Enroll now: Object-Oriented Software Engineering with Java
Summary
Title: Object-Oriented Software Engineering with Java
Price: $84.99
Average Rating: 4.9
Number of Lectures: 27
Number of Quizzes: 12
Number of Published Lectures: 27
Number of Published Quizzes: 12
Number of Curriculum Items: 60
Number of Published Curriculum Objects: 60
Original Price: $199.99
Quality Status: approved
Status: Live
What You Will Learn
Who Should Attend
Target Audiences
Course Updates
Sep 5: Adding ArrayList lecture (Section II) and one programming assignment on files and ArrayList
Overview
The course provides a comprehensive coverage of object-oriented programming (OOP) concepts using Java programming language.?OOP is the key paradigm that allows software reuse?and that?facilitates the development of complex and large-scale software. The course first starts with providing a clear understanding why OOP is important. We then dive into the main OOP concepts including?encapsulation, inheritance, and polymorphism. We also present generic classes and design patterns which further demonstrate an additional software?abstraction. All along the course, we show how OOP allows software engineers to develop complex software by making high-level abstractions starting from very general classes down to more concrete classes.?
To better illustrate the concepts, each chapter contains several hands-on activities, namely: (1) Quizzes which help reviewing the main theoretical concepts presented in the lectures, (2) short coding exercises where the student can apply the concepts he learned on simple use cases, (3) programming assignments, which??provide more thorough activities aiming at consolidating the understanding of the learner and guide him to master the concepts presented in the lectures. All hands-on activities have written and video solutions.?
In addition, during the course, the student will work on one application which he will improve from one chapter to another so that he can observe how programming concepts he learned can be applied to improve a certain application. In this course, we consider an application to process images for the programming assignment. There is no pre-requisite needed about images to do the exercises, as it is just a simple application context for the programming assignment.?
The course was designed to provide the learners with a solid background on software engineering using object-oriented programming concepts!
I?wish you?an excellent learning experience!
Course Curriculum
Chapter 1: Introduction
Lecture 1: Course Overview and Introduction
Lecture 2: [IMPORTANT] What is you face errors and need to debug and find solutions?
Chapter 2: General Concepts Reviews in Java
Lecture 1: [Refresher] Read From/Write to a File in Java
Lecture 2: Arrays vs ArrayLists
Chapter 3: Week 1. Classes and Objects
Lecture 1: A basic program without object-oriented programming
Lecture 2: The Student Class: Is it better to use Object-Oriented Approach?
Lecture 3: Initializing Attributes with a constructor
Lecture 4: Data hiding and Encapsulation
Lecture 5: Keyword this and more about data validation in the constructor
Lecture 6: Class-wide variables (i.e. Static Members)
Lecture 7: Constructors Overloading
Lecture 8: the toString() method
Lecture 9: Composition: the Has-A relationship
Chapter 4: Week 2. Inheritance
Lecture 1: What is inheritance?
Lecture 2: Without inheritance
Lecture 3: Using Inheritance
Chapter 5: Week 3. Polymorphism
Lecture 1: What is polymorphism?
Lecture 2: Compilation Time vs. Runtime
Lecture 3: Downcasting
Lecture 4: But, why polymorphism is important? polymorphic processing
Lecture 5: Abstract classes
Lecture 6: Interfaces
Lecture 7: Contract-First Development Approach
Lecture 8: The Comparable and Comparator Interfaces
Chapter 6: Week 4. Generic Classes
Lecture 1: Generic Methods
Lecture 2: Generic Classes
Chapter 7: Week 5. Design Patterns
Lecture 1: Design Patterns
Chapter 8: Week 6. Java Collection Framework Exercises
Chapter 9: Week 7. Recursion Exercises
Chapter 10: Final Problems for Revision
Instructors

Anis Koubaa
Professor of Computer Science
Rating Distribution
Frequently Asked Questions
How long do I have access to the course materials?
You can view and review the lecture materials indefinitely, like an on-demand channel.
Can I take my courses with me wherever I go?
Definitely! If you have an internet connection, courses on Udemy are available on any device at any time. If you don’t have an internet connection, some instructors also let their students download course lectures. That’s up to the instructor though, so make sure you get on their good side!
- Random Picks
- Popular
- Hot Reviews
- Crypto Trading Mastery (Scalping, Day trading, price action)
- Personal Finance
- How to Draw Cute Thanksgiving!
- Step-By-Step Stock Market Analysis and Real-Time Trades
- Hydrogen Energy Masterclass- Fundamentals Applications
- Figma Fundamentals- Use Figma Like a Pro
- Create 3D Models of Furniture and Books in Paint 3D
- Beginner Vizrt Artist Training
- 1YouTube Masterclass The Best Guide to YouTube Success
- 2Photoshop CC- Adjustement Layers, Blending Modes Masks
- 3Personal Finance
- 4SolidWorks Essential Training ( 2023 2024 )
- 5The Architecture of Oscar Niemeyer
- 6Advanced Photoshop Manipulations Tutorials Bundle
- 7Polymer Clay Jewelry Making Techniques for Beginners
- 8ZB Trading Cryptocurrency Price Action Course
- 1Linux Performance Monitoring Analysis Hands On !!
- 2Content Writing Mastery 1- Content Writing For Beginners
- 3Media Training for PrintOnline Interviews-Get Great Quotes
- 4Learn Facebook Ads from Scratch Get more Leads and Sales
- 5The Complete Digital Marketing Course Learn From Scratch
- 6C#- Start programming with C# (for complete beginners)
- 7[FREE] How to code 10 times faster with Emmet
- 8Driving Results through Data Storytelling