Java – 5th Edition
UV
TEST BANK
IA
_A
PP
Frank M. Carrano
RO
Comprehensive Test Bank for Instructors and
VE
Students
D?
© Frank M. Carrano
??
All rights reserved. Reproduction or distribution without permission is prohibited.
??
©Medexcellence ✅��
, Chapter 1 - Bags
True/False (10)
UV
1. An abstract data type is not necessarily a collection.
Answer: true
2. A collection is not necessarily an abstract data type.
IA
Answer: false
3. Entries of a bag can belong to classes related by inheritance.
_A
Answer: true
4. Entries of a bag may belong to different classes because items are unordered.
Answer: false
PP
5. All entries of a bag must have the same data type or a subtype of that data type.
Answer: true
RO
6. By declaring a data type to be a BagInterface, we can replace the bag class with another class
that implements the BagInterface.
Answer: true
7. A method can change the state of an object passed to it as an argument.
VE
Answer: true
8. A set is a special kind of bag.
Answer: true
D?
9. You cannot determine the exact number of times a particular item appears in a bag because it is
unordered.
Answer: false
??
10. Code written with respect to an interface makes it difficult to replace one implementation of a
bag with another.
??
Answer: false
, Short Answer (5)
1. Explain the rationale for returning a Boolean value from the add bag operation.
Answer: A client should know what happened. A Boolean value indicates true for success or false
UV
for a failed operation.
2. Explain why writing a test program before implementing a class is a good idea.
Answer: It helps you understand the specifications before committing to your design and
implementation.
IA
3. Explain why the set ADT does not need a getFrequencyOf operation.
Answer: Because sets do not contain duplicate items, only a 0 for absence or 1 for presence of an
_A
item would be returned. Using a contains method is a better design.
4. What is the design rationale for providing a toArray method instead of a displayBag method?
Answer: The user/client is free to display any or all of the items in any way desired.
PP
5. Explain why null is a potential return value for the remove operation.
Answer: It is a value that cannot be in the bag and therefore signals a problem if, for example, a
client tries to remove an entry from an empty bag.
RO
Multiple Choice (30) WARNING: CORRECT ANSWERS ARE IN THE SAME POSITION AND TAGGED
WITH **. YOU SHOULD RANDOMIZE THE LOCATION OF THE CORRECT ANSWERS IN YOUR EXAM.
VE
1. A language-independent specification for a group of values and operations on those values is
called a/an:
a. abstract data type **
b. data structure
c. collection
D?
d. primitive
2. An implementation of an ADT with a programming language is called a/an:
a. data structure **
??
b. abstract data type
c. collection
d. primitive
??
3. An object that groups other objects and provides services to its clients is called a/an:
a. collection **
, b. abstract data type
c. data structure
d. primitive
UV
4. Which of the following is not true with regard to bags?
a. objects are in a specific order **
b. can contain duplicate items
c. is an abstract data type
d. is a kind of collection in Java
IA
5. Which behavior is not represented in a bag?
a. reorder the bag **
b. report the number of items in the bag
_A
c. report if the bag is empty
d. add an item to the bag
6. Which method returns a count of the current number of items in a bag?
PP
a. getCurrentSize() **
b. getSize()
c. size()
d. currentSize()
RO
7. Why would the add method return false?
a. when the addition of a new item was not successful **
b. when there was a duplicate of the entry already in the bag
c. when there was not a duplicate of the entry already in the bag
d. when addition of a new item was successful
VE
8. Which method removes all entries of a bag?
a. clear() **
b. remove()
D?
c. delete()
d. empty()
9. Which method removes one unspecified entry from a bag if possible?
a. remove() **
??
b. clear ()
c. delete()
d. empty()
??
10. Which method removes one occurrence of a particular entry from a bag if possible?
a. remove(anItem) **