OOP Important Definitions - Exam Revision
Class
A class is a user-defined blueprint or prototype from which objects are created. It contains data members
(variables) and member functions (methods).
Object
An object is an instance of a class. It represents a real-world entity and can access the class's data and
functions.
Encapsulation
Encapsulation is the process of binding data and functions together and keeping them safe from outside
interference. Achieved using classes.
Abstraction
Abstraction means showing only essential features and hiding the internal details. Achieved using access
specifiers and abstract classes.
Inheritance
Inheritance is the process by which one class (child/derived) inherits the properties and behaviors of another
class (parent/base). It supports code reusability.
Polymorphism
Polymorphism means the ability to take many forms. In OOP, it allows the same function or operator to
behave differently in different contexts.
Data Hiding
Data hiding means restricting access to internal data of a class from outside. It is achieved using private and
protected access specifiers.
OOP Important Definitions - Exam Revision
Compile-Time Polymorphism (Static Binding)
Achieved using function overloading and operator overloading.
Run-Time Polymorphism (Dynamic Binding)
Achieved using virtual functions and inheritance.
Single Inheritance
A child class inherits from one parent class.
Multiple Inheritance
A child class inherits from more than one parent class.
Multilevel Inheritance
A class is derived from another derived class.
Hierarchical Inheritance
Multiple classes are derived from a single base class.
Hybrid Inheritance
A combination of two or more types of inheritance.
Constructor
A special function automatically called when an object is created. Used to initialize objects.
Destructor
A special function automatically called when an object is destroyed. Used to free resources.
OOP Important Definitions - Exam Revision
Function Overloading
Defining multiple functions with the same name but different parameters.
Operator Overloading
Giving additional meaning to operators for user-defined data types.
Access Specifiers
Keywords used to define the access level of class members: private, protected, public.
Friend Function
A function that is not a member of the class but can access its private and protected members.
Virtual Function
A function defined in the base class and overridden in the derived class, used for runtime polymorphism.
Abstract Class
A class that contains at least one pure virtual function and cannot be instantiated.
Pure Virtual Function
A virtual function declared with = 0. It must be overridden in derived classes.