Computer Science 3675
Summer 2004
Additional practice questions for final exam

  1. Write a clearly legible T to the left of each of the following that is true, and a clearly legible F to the left of each that is false.

    1. The class is an important concept of object-based programming.

    2. In most object-oriented languages, some type checking must be done at run time.

  2. In object-oriented programming, is a private data field of an object accessible only to that one object, or is it possible for other objects to access it directly?

  3. Are most object oriented programming languages imperative or declarative languages?

  4. If a method is declared to be protected in class A, Where is that method visible?

  5. What is the difference between a class variable and an instance variable?

  6. The base class B of a class A is the class that A directly extends. In a single-inheritance object-oriented language, is there a limit on the number of base classes that a class can have?

  7. In object-oriented programming, you imagine that objects carry functions with them. Yet, the functions are not really stored with the objects. How does an object locate its functions? How does it know which functions to select? What is the name of the system support that is responsible for locating functions?

  8. Variables are found by means of selectors. How does the mechanism for inheriting variables work in single-inheritance object-oriented languages? Is there a separate implementation of each selector for each class, or does one implementation of each selector work for all subclasses of a class? How do the selector(s) work?

  9. What is an abstract class?

  10. What are the characteristics of a virtual method? What makes it virtual?