Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
The Final Keyword | Inheritance Overview
C++ OOP
course content

Course Content

C++ OOP

C++ OOP

1. Fundamentals of OOP
2. Constructors and Destructors
3. Encapsulation Overview
4. Inheritance Overview
5. Polymorphism Overview

bookThe Final Keyword

The final keyword plays a crucial role in defining classes and controlling inheritance hierarchies. It provides developers with a powerful mechanism to restrict certain aspects of class design.

The usage of final keyword

When a class is declared as final, it indicates that the class cannot be subclassed further. In other words, it serves as the end point of the inheritance hierarchy, disallowing from deriving it.

cpp

Example

copy
12345678910
class Example final { // Class members and methods }; // cannot derive from final base Example class ExtendedExample: public Example { // Class members and methods }; int main() {}

This feature is especially valuable when you aim to restrict the modification or extension of a specific class, or when you prefer utilizing your class using composition rather than inheritance. There is also other benefits to using it.

Aspect
Description
Enhanced Design ControlMarking classes as final enables precise control over the inheritance hierarchy, preventing unintended modifications or extensions.
Code SafetyUtilizing final enhances code safety by enforcing design decisions and reducing the risk of introducing bugs or inconsistencies through subclassing.
Performance OptimizationCompiler optimizations can be more effectively applied when certain classes are marked as final, potentially leading to improved runtime performance.
What does the `final` keyword do when applied to a class?

What does the final keyword do when applied to a class?

Select the correct answer

Everything was clear?

How can we improve it?

Thanks for your feedback!

Section 4. Chapter 6
some-alt