Title: Module 10 - Polymorphism
Course: COP 2551 Intro to Object Oriented Prog > Section: Module 10 - Polymorphism

Introduction

This module presents polymorphism, another fundamental principle of object-oriented software. There are design issues related to polymorphism. First you will explore the concept of binding and see how it relates to polymorphism. Next you will examine how polymorphic references can be accomplished using either inheritance or interfaces.

Sorting and searching are classic areas of study in computer science. In this module, you will learn of several well-known algorithms for each activity. Searching and sorting both use polymorphic solutions.

Objectives

Upon completion of this module, the student will be able to:

- Define polymorphism and its benefits.
- Discuss the concept of dynamic binding.
- Use inheritance relationships to create polymorphic references.
- Use interfaces to create polymorphic references.
- Explore sorting and searching using polymorphic implementations.
- Discuss object-oriented design in the context of polymorphism.

Readings & Resources

Chapter 10 – Sections 1 - 6 Java Software Solutions: Foundations of Program Design, 8^th Ed., John Lewis and William Loftus.

Assignments and Activities

- Complete the Module 10 Ungraded Activities
- Complete the Module 10 Quiz
- Begin Programming Project 7
- Submit Programming Project 6