CPE342 Object-Oriented Problem Solving

Course Description

This course aims to introduce students to object-oriented programming by building on the understanding of procedural programming and provide them with object-oriented programming skills to solve computational problems. The course includes practicing object-oriented programs development, editing, compiling, linking, and debugging using Java. The core of this course is studying objects and classes and how they are used to represent data. Through the study of objects and classes, this course introduces students to the concepts of inheritance, polymorphism, abstraction, overriding, reuse, encapsulation, etc…


Please join the course facebook group: 




Course Outline , Course Syllabus


Programming Fundamentals: Part IPart II



Objects & Classes: Part I , Part II , Part III

Inheritance & Polymorphism: Part IPart II

Abstract Classes and Methods



Exception Handling


Lab Documents

Lab0: Tutorial

Lab1: Tutorial, Sheet

 Lab2: Tutorial, Sheet

Lab3: Tutorial, Sheet

Lab4: Tutorial, Sheet, Array Data Field Example

Lab5: Tutorial, Sheet

Lab6: Tutorial, Sheet, Object Composition Example

Lab7: Tutorial, Sheet

Lab8: Sheet

Lab9: Tutorial, Sheet, Tutorial Code, Sheet Solution

Additional Material


Lab Midterm Sample

Midterm Samples: Sample-1Sample-2 (Spring 2017) , Sample-3 (Fall 2017)

 Sample of Lab-Final Exam , Fall 2017 Lab Final Exam

 Sample-1 Final Exam , Sample-2 Final Exam


All lab assignments should be submitted to the following email: This email address is being protected from spambots. You need JavaScript enabled to view it.

If the assignment includes code submission, make sure you submit only your .java file(s). If there are several files in your submission, compress the files and submit a .rar or .zip file. DO NOT submit separate files, otherwise your solution will not be graded.

Late submissions (after the deadline) will not be accepted.

Assignment # Assignment Document Assignment Deadline
pdf Saturday October 27th midnight. 
2 pdf Saturday November 3rd midnigth. 
3 pdf Tuesday November 20th midnight
4 pdf  Saturday December 15th midnight

Mid Grades : Monday/Wednesday - Sunday/Tuesday

Quizes : Monday/Wednesday - Sunday/Tuesday

Labs: Monday/Wednesday - Sunday/Tuesday

Assignments: Monday/Wednesday - Sunday/Tuesday

Sum (60): Monday/Wednesday - Sunday/Tuesday