Object-Oriented
Problem Solving
Instructor: Dr. Fahed Jubair
Computer Engineering Department
University of Jordan
Course Description
• Beginner-level course in object-oriented programming
(OOP) and problem solving
• OOP is a programming paradigm that uses “objects” to
represent real-life entities and their interactions
• Problem solving is simply introducing a computer
algorithm to solve a problem
© All Right Reserved
Java
• The concepts in thus course will be covered
using Java programming language.
• Why java?
– Java is an object-oriented programming language
by its nature
– Java is platform-independent
– Java is popular
© All Right Reserved
Topics Covered
• Programming fundamentals
• Methods
• Arrays
• Objects and Classes
• Generics
• Inheritance and Polymorphism
• Abstract Classes and Interfaces
• Exception Handling
• GUI programming with JavaFX
© All Right Reserved
Expected Background
• C++ programming: variables, expressions, assignments,
conditions, if-statements, loops, arrays, functions,
objects, and recursion
© All Right Reserved
Textbook
• INTRO TO JAVA PROGRAMMING,
COMPREHENSIVE VERSION (10TH EDITION)
• Y. DANIEL LIANG
© All Right Reserved
Instructor Information
• Fahed Jubair f.jubair@ju.edu.jo
• B.Sc., University of Jordan
• Ph.D., Purdue University
• Room: CPE 417
• Office hours: TBA
© All Right Reserved
Grading Policy
Main Course:
• Programming assignments 15%
• Lab sheets 15%
• Midterm exam 30%
• Final exams 40%
Note that both midterm and final exams
will be split into two halves: practical
exam and theoretical exam
© All Right Reserved
Heads up!
• I expect full seriousness from each one of you
• I will not shy away from asking you to do many
programming assignments
• Learning programming is a hands-on process so I encourage
you to do as many exercises as your can
• Attendance is important
• Do not come late
• Cheating will NOT be tolerated
• No makeup exams
© All Right Reserved
Questions?
© All Right Reserved