به طور کلی می توان گفت که از کلید واژه final می توان در سه موقعیت متفاوت بهره مند شد
مورد اول استفاده از این کلید واژه برای کلاس ها است. در واقع زمانیکه یک کلاس را final کنیم دیگر امکان ایجاد Subclass از آن کلاس وجود نخواهد داشت
به عبارت دیگر با استفاده از final یک از مهم ترین قابلیت های زبان برنامه نوسی جاوا که یک زبان شیئ گرا است را از دست خواهیم داد و آن Inheritance است
مورد دوم استفاده از کلید واژه final به همراه متدها است. در واقع زمانیکه یک متد final شود دیگر به هیچ وجه امکان بازنویسی آن متد برای ما وجود نخواهد داشت. به عبارت دیگر نوع کاری که آن متد انجام می دهد را نمی توانیم تغییر دهیم
مورد سوم استفاده از کلید واژه final در ارتباط با Local Variable ها، Instance Variable ها و پارامترها است. در حقیقت زمانیکه final را در کنار یک متغیری بنویسیم که دارای یک مقدار اولیه است، مقدار اولیه آن متغیر نهایی شده و دیگر به هیچ وجه امکان اختصاص یک مقدار جدید به آن را نخواهیم داشت مثل ثبات ها در زبان سی