Site MapHelpFeedbackSelf-test Questions
Self-test Questions
(See related pages)



1

Which of the following best describes an object?
A)Part of a software system that is entirely unique.
B)A concept, abstraction or thing in an application domain.
C)A program that represents something tangible in the problem domain.
2

Which of the following best describes abstraction?
A)A representation of something tangible.
B)A representation that can be stored in a software system.
C)A representation that contains only relevant details.
3

Which of the following is not a reason for modelling objects?
A)To produce a design for part of a software system.
B)To understand an aspect of the application domain.
C)To separate data from process.
4

What do all objects have?
A)State, behaviour and identity.
B)Behaviour, data and identity.
C)Instances, structure and similarity.
5

Which of the following best describes object state?
A)The particular condition that an object is in at a given moment, determining its possible behaviours.
B)Which class the object belongs to.
C)The semantics of the object.
6

Which of the following best describes object behaviour?
A)What the object is able to do to other objects.
B)What the object is able to do for other objects.
C)What the object is able to do to itself.
7

Which of the following is a useful set of questions to ask when modelling an object, according to Rebecca Wirfs-Brock?
A)Who am I, what can I do and what do I know?
B)Where am I, what am I and who do I know?
C)What do I have, what can I get and what can I do?
8

Which of the following is not a description of a class?
A)A set of objects that share the same behaviour, attributes, relationships and semantics.
B)An abstract descriptor for a set of instances with certain logical similarities to each other.
C)A set of objects that collaborate together to achieve some common objective.
9

Which of the following best describes the relationship between an object and its class?
A)The structure and permitted behaviours of an object are defined by its class.
B)A class is a container that holds a collection of similar objects.
C)An object is an implementation of a class.
10

What is generalization?
A)A process of broadening the scope of an object, such that it becomes more generally useful.
B)A kind of relationship between a more general element and a more specific element.
C)A process of collecting together objects into their respective classes.
11

Which of the following best describes a type?
A)A description of a set of objects with similar behaviours.
B)A superclass in a generalization hierarchy.
C)A class with a characteristic that distinguishes it from all other classes.
12

Which of the following is not an advantage of using generalization?
A)Generalization helps to organize a model so that the degree of similarity between classes is made more explicit.
B)A generalization hierarchy is easy to extend to fit a changing picture.
C)Generalization helps to encapsulate classes and subsystems so that their implementation is hidden from other parts of the system.
13

How does generalization differ from inheritance?
A)It doesn't - they are the same thing.
B)Inheritance is a mechanism by which some OO languages implement generalization.
C)With generalization each class has only one superclass, whereas with inheritance each class has two or more superclasses.
14

Which of the following is not a characteristic of a subclass?
A)A subclass can only have superclasses, it cannot have subclasses of its own.
B)A subclass inherits all the characteristics of its superclass.
C)A subclass includes at least one detail that is not shared by its superclass.
15

What is meant by 'transitive operation' in the context of generalization and inheritance?
A)An operation in a superclass may be overwritten by a different operation in a subclass.
B)An operation in a superclass may not be overwritten by a different operation in a subclass.
C)A subclass inherits characteristics from all its superclasses at all levels.
16

What is the significance of message-passing in an OO system?
A)Messages represent input from users that tells the software system what to do.
B)Objects exchange messages in order to communicate with each other.
C)Messages represent output to users that show the results of processing.
17

What is a message protocol or signature?
A)A message protocol is a valid sequence of keystrokes by a user.
B)A message protocol is a valid sequence of operations in a series of different objects.
C)A message protocol is the interface to an operation.
18

What is meant by multiple inheritance?
A)Multiple inheritance signifies that a class simultaneously belongs to more than one generalization hierarchy.
B)Multiple inheritance signifies that a class has more than one superclass.
C)Multiple inheritance signifies that a class can have different superclasses at different times.
19

Which of the following best describes encapsulation?
A)The implementation of an object can only be changed by its original programmer.
B)Data within an object can only be accessed by passing a valid message to one of its own operations.
C)Data within an object can only be accessed by passing a valid message to its class.
20

Which of the following best describes an object's interface?
A)The view that an object presents to users of the system.
B)The links that an object has with other objects.
C)The complete set of signatures for all the object's operations.
21

Which of the following best describes polymorphism?
A)The capacity of an object to behave in different ways at different times according to its current state.
B)The capacity of different objects to respond to a similar message in appropriate but different ways.
C)The capacity of an object to send different messages to different objects according to their class.
22

Which of the following is a valid reason why it is difficult to design event-driven software in a procedural manner?
A)It is difficult to anticipate and design for all possible sequences of use.
B)Procedurally designed programs are not capable of responding quickly to events.
C)Procedural programs are only suitable for record-based data structures.
23

Which of the following is not an advantage of modular software design?
A)Modular systems are typically more reliable in use.
B)Modular systems can be implemented in small, manageable chunks.
C)Modular systems are independent of the operating system that they run on.







O-O Systems Analy, Bennett, 3eOnline Learning Center

Home > Chapter 4 > Multiple Choice Quiz