DEV Community

Discussion on: Why it is not possible to extend a final class in Java?

Collapse
 
amarlearning profile image
Amar Prakash Pandey

Thanks, @bertilmuth .

As you said final keyword in java means "can‘t be modified", but still we should be allowed to extend it from another class so that we can use its defined method.

I totally agree that if we try to modify any of its methods then it should give an error, but otherwise we should be allowed to extend that final class and reuse its method in another class.

Please correct me if I am wrong anywhere.

Collapse
 
bertilmuth profile image
Bertil Muth

As Kasey Speakman has pointed out, you can extend final classes by composition. Just not inheritance. A class can offer all visible methods of the final class, plus further methods.