Reading Exercise #7
Due 4:00 PM, Tuesday March 4, 2014
for Chapter 9 (pp 449-499) of the Scott Text.

Content of reading exercise #7

  1. What makes a language Object Oriented?
  2. How do Object Oriented Languages promote code reuse?
  3. How is OOP different from using modules?
  4. How does the OOP paradigm encourage abstraction?
  5. What is the difference between private, public, and protected class members in C++ ?
  6. Explain class inheritance and how it is a beneficial feature of a language.
  7. How does a C++ (or Java or C#) compiler tell which constructor to use for a given object? How does the answer differ for Eiffel and Smalltalk?
  8. What is the difference between the value and reference models of class variables? Why might we prefer one over the other?
  9. Explain dynamic method binding and why it is so important to OOP.
  10. What is the difference between overriding and overloading?
  11. What might a vtable look like for an instance of class Stack, with public methods: empty, pop, push?