Chapter 7 Outcomes
Objects, Classes, and Inheritance


After completing this chapter and participating in class, you should be able to accomplish each of the following outcomes.

Knowledge Outcomes

  1. Define each of the key terms listed in the chart below.

  2. module object encapsulate
    abstract data type (ADT) message passing import
    export method or operation template
    class instance caret (^)
    object allocation inheritance body
    unit pointers override
    instantiate    

  3. Discuss the strategies used to eliminate interference between subprograms (7.1).

  4. Explain why it is important to control interference between procedures in large programs (7.1).

  5. Describe what is necessary for any object to use a procedure encapsulated in another object (7.1).

  6. State the advantage an object-oreinted program has with respect to changes made to the storage of data in an object or the way a procedure is implemented in an object (7.1).

  7. Categorize the operations of the Turtle object by dividing them into one of the following groupings (7.2);

    • controlling position,
    • controlling direction, and
    • controlling drawing.

  8. In general terms, describe what makes up objects (7.2).

  9. Using the Turtle object as an example, describe what an object is (7.3).

  10. Given the signatures and a description of the behaviour, use the operations exported by an object (7.3).

  11. Explain the difference between an object and a class (7.4).

  12. State the changes necessary to create a class from an already-existing object, and use it in a program (7.5).

  13. Show the form of an object definition (7.7).

  14. Show the form of a modified class (7.7).

Skills Outcomes

  1. Create drawings using the Turtle object (7.2).

  2. Use pointers as a means of creating any number of instances of a class, and correctly utilize them in a program (7.4).

  3. Create a new class by inheriting the characteristics of the old one, and providing the necessary modifications (7.6).

  4. Show how to override an existing procedure in an inherited class in order to modify this operation for the new class (7.6).

  5. Create a new class by modifying an existing class and using it in a program (7.6).