| Abstract Class | A class that contains abstract methods and cannot be instantiated |
| Abstract Method | A method whose name and parameters are defined but that doesn’t have any implementation |
| Accessor | A public method that returns data relating to a private attribute |
| Aggregation | Forming one larger object from multiple smaller objects, where the smaller objects can exist separately to the larger object |
| Attribute | A variable or constant belonging to a particular class or object |
| Child Class | A class that inherits from another class |
| Class | A template defining the attributes and methods of a type of object from which objects can be created |
| Composition | Forming one larger object from multiple smaller objects, where the smaller objects cannot exist separately to the larger object |
| Constructor | A method that creates an object of a particular class |
| Encapsulation | Grouping together related data and subroutines into classes, and providing controlled access to that class's private attributes |
| Inheritance | When one type of object or class adopts functionality from a different type of object or class |
| Instantiation | The process of creating an object from a particular class |
| Method | A subroutine belonging to a particular class or object |
| Multiple Inheritance | When a child class inherits from multiple parent classes |
| Mutator | A public method that changes the value of a private attribute |
| Object | An instance of a data structure that has its own attribute values and associated methods |
| Overloading | Creating different implementations of the same method that take different argument types |
| Overriding | Superseding the implementation of a parent class’ method in its child class |
| Parent Class | A class that is inherited by another class |
| Polymorphism | Allowing different implementations of a method to use the same method name |
| Private | A method or attribute of a particular class that can only be called within that class |
| Procedural Programming | A programming paradigm that structures a program as a series of steps that are followed in sequence |
| Paradigm | A particular approach to designing and creating programs |
| Protected | A method or attribute of a particular class that can only be called within that class or its child classes |
| Public | A method or attribute of a particular class that can be called by any other class |
| Static | Class method that can be called even if no objects of that class have been instantiated |
| Super Method | When a child class calls its parent class’ implementation of a method |
| Virtual Method | Any method that can be overridden by a child class |