Specify, design, and implement a class that can be used in a program that simulates a combination lock. The lock has a circular knob with the numbers 0 through 39 marked on the edge, and it has a three-number combination, which we will call x, y, and z.
In order to open the lock, you must turn the knob clockwise at least one entire revolution, stopping with x at the top; then you turn the knob counterclockwise, stopping the “second” time that y appears at the top; finally, you turn the knob clockwise again, stopping the next time that z appears at the top. At this point, you may open the lock.
Your “Lock” class should have a constructor that initializes the 3-number combination (use 0, 0, 0 for default arguments in the default constructor).
Also, provide the following methods:
To alter the lock’s combination to a new 3-number combination
To turn the knob in a given direction until a specified number appears at the top. (You also must show all of the numbers in the output as the lock is being turned – could use a for loop)
To close the lock
To attempt to open the lock
To inquire about the status of the lock (open or shut)
To tell what number is currently at the top
I need a complete Java program that uses all of the above methods in the output.