Die.java
1    /* 
2     *Model a die in terms of two properties: 
3     * -order, the number of faces 
4     * -top,the value of the top face 
5     */
6    
7    
8    package chance;
9    
10   public class Die {
11   
12       //  the instance variables (states)
13   
14       private int order;
15       private int top;
16   
17       //  THE CONSTRUCTORS
18   
19       public Die() {
20           order = 6;
21           top = (int) ((Math.random() * 6 ) + 1);
22       }
23       public Die(int nrOfSides){
24           order = nrOfSides;
25           top = (int) ((Math.random() * nrOfSides ) + 1);
26       }
27   
28       //THE METHODS (BEHAVIOR)
29   
30       public int top() {
31           return top;
32       }
33       public void roll() {
34           top = (int) ((Math.random() * order ) + 1);
35       }
36   }
37