Program 3 (25 points) Write a Java program to implement a dice

Program 3 (25 points)
Write a Java program to implement a dice game. You will need to create two classes for this
class Die is used to represent a single die (the singular form of dice). This class should have the
following attributes:
• instance variables:
• sides: an int value representing the number of sides your die has (most games use 6sided dice, but there are plenty of variations)
• value: an int value representing the current roll of the die; will be a number between 1
and sides
• a Random object
• instance methods:
• two constructors:
• the default constructor should set the value of sides to 6, initialize the Random
object and roll the die to get an initial value for variable value
• another constructor that takes a single argument representing the number of sides
you want your die to have, sets sides to this value, and does all the same
operations the other constructor does
• one mutator method called roll, which rolls the die (generates a random number between
1 and sides, which is then assigned to value)
• one accessor method called getRoll, which returns value
• a main method for testing that the other methods work
Your second class represents the game; the name of the class will be up to you. This class will also
contain a main method, which is the driver for the game. You may want to include other methods,
depending on how complicated your game is. You must meet the following requirements:
• Your game must use at least two dice (2 Die objects, in other words)
• Your game must have at least two players: the user and the computer
• You must have a way to keep score and to inform the user of his/her score
• The computer must play to win, if that is possible (if not a pure game of chance)
• The user must be given the option to play again once a game is completed