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    package chance;
8    
9    public class Die {
10   
11       //THE INSTANCE VARIABLES (STATE)
12   
13       private int order;
14       private int top;
15   
16       //THE CONSTRUCTORS
17   
18       public Die() {
19           order = 6;
20           top = (int) ( ( Math.random() * 6 ) + 1);
21       }
22   
23       public Die(int nrOfSides) {
24           order = nrOfSides;
25           top = (int) ( ( Math.random() * nrOfSides) + 1);
26       }
27   
28       //THE METHODS (BEHAVIOR)
29       public int top() {
30           return top;
31       }
32       public void roll() {
33           top = (int) ( (Math.random() * order) + 1);
34       }
35   }
36