Its less a matter if the mutators are used or not. When the signature of the method doesn't match the body (in particular, the return result here), the class will fail to compile.
Methods != members, what I mean is you are treating methods as members:
cashBall.outputHigher // Should be cashBall.outputHigher()
keyboard.nextInt // Should be keyboard.nextInt()
In the first example, it will fail anyway (you'd see similar behaviour in the do/while loop with cashBall.equals as well), since it is an integer, and not an object (should be a CashBall object).
For scalar and complex; a Scalar holds a single value, and is primitive:
int i = 0; // Scalar
Integer i = new Integer(5); // Complex
int i = new int; // Complex array of scalar
Object o = new Object; // Complex array of Complex
Classes / objects are considered to be complex in nature, as is structs and unions in C.
In regards to what you have:
n[kickerBall] =(int)(Math.random() * 9);
That is illegal as there is no offset available in n to assign a value to. That has to either be declared as an int (with a size during instantiation), or the n[kickerBall] needs to become a scalar instead of an array.
You'll need to fix up the compilation errors first before we can begin to debug what the actual runtime is.