Why there is necessary to make a variable private static final?
Making a member private, means it's only visible to objects of the same class (unless, of course, expose via a public getter method.
Making it static means that there's only one instance of that particular member variable. This is good since there is no point having more than one instance of a constant.
Making it final, means that it can only be assigned once, alowing the compiler to optimize the bytecode since it is known that the value of that variable is never going to change once assigned.