An Introduction to Object-Oriented Programming

By Timothy Budd

Study Guide for Chapter 7


Learning Objectives

After reading this chapter, you should be able to:

Study Questions

You may wish to use the print or save as command on your web browser to produce a copy of this study guide. That way you can fill in the answers to the questions as part of your assimilating the information you learn in this chapter.
  1. Give a simple intuitive description of inheritance.

  2. Explain how a subclass can be viewed as both an extension and a contraction of the parent class.

  3. Explain the difference between a subclass and a subtype.

  4. What is the principle of substitutability?

  5. Explain why the principle of substitutability tends to be more important in statically typed languages than in dynamically typed languages.

  6. Give an example of each of the following forms of inheritance.

  7. Which of the following forms of inheritance generate subtypes in addition to subclasses?

  8. Of the languages we are considering in this book, which require that all classes inherit from a common base class? What are some of the advantages of doing so?

  9. Describe some of the benefits of using inheritance.

  10. What is rapid prototyping?

  11. Describe some of the costs of using inheritance.

  12. Explain why raw execution speed should not be an overriding concern in software development.

Contents copyright Timothy Budd, 1995.