Can a final class be subclassed in Java?

Java 8Object Oriented ProgrammingProgramming

The final modifier for finalizing the implementations of classes, methods, and variables.

The main purpose of using a class being declared as final is to prevent the class from being subclassed. If a class is marked as final then no class can inherit any feature from the final class.

You cannot extend a final class. If you try it gives you a compile time error.


final class Super {
   private int data = 30;
public class Sub extends Super{


C:\Sample>javac error: cannot inherit from final Super
public class Sub extends Super{
1 error
Updated on 30-Jul-2019 22:30:20