A good answer might be:

No.


Constants

Often in a program you want to give a name to a constant value. For example you might have a tax rate of 0.045 for durable goods and a tax rate of 0.038 for non-durable goods. These are constants, because their value is not going to change when the program is executed. It is convenient to give these constants a name. This can be done:

class CalculateTax
{
  public static void main ( String[] arg )
  {
    final double DURABLE = 0.045;
    final double NONDURABLE = 0.038;

    . . . . . .
  }
}

The reserved word final tells the compiler that the value will not change. The names of constants follow the same rules as the names for variables. (Programmers sometimes use all capital letters for constants; but that is a matter of personal style, not part of the language.) Now the constants can be used in expressions like:

taxamount = gross * DURABLE ;

But the following is a syntax error:

DURABLE = 0.441;    // try (and fail) to change the tax rate.

There are two big advantages to using constants:

  1. They make your program easier to read and check for correctness.
  2. If a constant needs to be changed (for instance an new tax law changes the rates) all you need to do is change the declaration. You don't have to search through your program for every occurence of a specific number.

QUESTION 15:

Could ordinary variables be used for these two advantages? What is another advantage of using final?