"""
Multiple Choice:

    1. The ______________ programming practice is centered on creating functions that are
    separate from the data that they work on.
        >a. modular
        b. procedural
        c. functional
        d. object-oriented

    2. The ______________ programming practice is centered on creating objects.
        a. object-centric
        b. objective
        c. procedural
        >d. object-oriented

    3. A(n) ______________ is a component of a class that references data.
        a. method
        b. instance
        >c. data attribute
        d. module

    4. An object is a(n) ______________.
        a. blueprint
        b. cookie cutter
        >c. variable
        d. instance

    5. By doing this you can hide a class’s attribute from code outside the class.
        a. avoid using the self parameter to create the attribute
        b. begin the attribute’s name with two underscores
        >c. begin the name of the attribute with private__
        d. begin the name of the attribute with the @ symbol

    6. A(n) ______________ method gets the value of a data attribute but does not change
    it.
        a. retriever
        b. constructor
        c. mutator
        >d. accessor

    7. A(n) ______________ method stores a value in a data attribute or changes its value in
    some other way.
        a. modifier
        b. constructor
        >c. mutator
        d. accessor

    8. The ______________ method is automatically called when an object is created.
        >a. __init__
        b. init
        c. __str__
        d. __object__

    9. If a class has a method named __str__, which of these is a way to call the method?
        a. you call it like any other method: object.__str__()
        b. by passing an instance of the class to the built in str function
        c. the method is automatically called when the object is created
        ? you just call the object, so this I think....d. by passing an instance of the class to the built-in state function

    10. A set of standard diagrams for graphically depicting object-oriented systems is provided by ______________.
        >a. the Unified Modeling Language
        b. flowcharts
        c. pseudocode
        d. the Object Hierarchy System

    11. In one approach to identifying the classes in a problem, the programmer identifies the
    ______________ in a description of the problem domain.
      ?  a. verbs
        b. adjectives
        c. adverbs
        d. nouns

    12. In one approach to identifying a class’s data attributes and methods, the programmer
    identifies the class’s ______________.
        a. responsibilities
        b. name
        c. synonyms
      ?  d. nouns

True or False:

    1. The practice of procedural programming is centered on the creation of objects.     F

    2. Object reusability has been a factor in the increased use of object-oriented programming.     T

    3. It is a common practice in object-oriented programming to make all of a class’s data attributes 
    accessible to statements outside the class.                                                           F

    4. A class method does not have to have a self parameter.              T

    5. Starting an attribute name with two underscores will hide the attribute from code outside the class.     T

    6. You cannot directly call the __str__ method.          T
    
    7. One way to find the classes needed for an object-oriented program is to identify all of
    the verbs in a description of the problem domain               T

"""