The final keyword

Javas final keyword has slightly different meanings depending on the context, but in general it says This cannot be changed. You might want to prevent changes for two reasons: design or efficiency. Because these two reasons are quite different, its possible to misuse the final keyword.

The following sections discuss the three places where final can be used: for data, methods, and classes.