Case Study: Card Shuffling and Dealing Simulation
The examples in the chapter thus far have used arrays containing elements of primitive types. The elements of an array can be either primitive types or reference types. This section uses random-number generation and an array of referencetype elements, namely objects representing playing cards, to develop a class that simulates card shuffling and dealing. This class can then be used to implement applications that play specific card games. The exercises at the end of the chapter use the classes developed here to build a simple poker application.
We first develop class Card, which represents a playing card that has a face (e.g., "Ace", "Deuce", "Three", …, "Jack", "Queen", "King") and a suit (e.g., "Hearts", "Diamonds", "Clubs", "Spades"). Next, we develop the DeckOfCards class , which cre