The final keyword is used to restrict the user.
A final class can be used when you intend not to extend the class. For example, let's say there is a class "password", and you want that nobody can extend that class in your project. In this case, make your class FINAL. If you or somebody else want to extend that class in future then it shouldn't be FINAL.
But this analysis should be done long before writing code; because you can't go back and make it extensible once you mark it as FINAL.