Introduction to Object Oriented Programming with Java

Undergraduate course, University of Missouri - St. Louis, Department of Computer Science, 2020

Course material for CS2261, covering Java fundamentals, objects, interfaces, abstract classes, and object-oriented programming principles.

Course Overview

This course introduces students to the core principles of object-oriented programming (OOP) using the Java programming language. Students gain practical experience in writing and designing reusable, modular, and maintainable code through hands-on labs and projects.

Topics Covered

  • Java syntax and development environment setup
  • Classes and objects
  • Inheritance and polymorphism
  • Interfaces and abstract classes
  • Exception handling
  • Basic file I/O and Java collections
  • Unit testing and code debugging

Learning Objectives

By the end of this course, students will be able to:

  • Design class hierarchies to model real-world systems
  • Implement polymorphic behavior using interfaces and abstract base classes
  • Apply principles of encapsulation and modularity to manage complexity
  • Debug and test Java applications effectively

Audience

Second-year undergraduate students majoring in computer science or software engineering.

Tools Used

  • Java SE Development Kit (JDK)
  • IntelliJ IDEA / Eclipse IDE
  • JUnit for unit testing