Sam Jimzz wrote:you mean we will use final class's only when we don't need to extend it in the future..?
This is one of the cases, sure. But making a class final doesn't mean you can't remove the final modifier again in the future. You can think of making a class final as saying "For now, I don't see any reason to extend this class".
However, once you make your class extensible, you can't go back to making it final. This is why you should always make a class final, unless you have a good reason not to.
Is there any disadvantages in using more final class's in a project..?
Yes, making them final means you can't extend them. However, this can be a hidden blessing, because inheritance breaks encapsulation, and encapsulation is much more important.