- binding, early: non-OOP function calls
- binding, late: function address calculation at run-tim, the
virtual keyword specifies that a member function is
dynamically bound.
- composition == aggregation:
the new class is composed of objects of other classes
- heap: memory area used for dynamic memory allocation. Objects on
the stack are automatically destroyed, heap objects have to be destroyed
by the programmmer (or by the garbage collector which deletes objects
that are no longer used).
- inheritance: base class == super class == parent class, derived class
- polymorphism: the ability of objects belonging to different types
to respond to method calls in a type-specific way, e.g. the shape
interface can be used by circles, squares, polygons.
- upcasting: treating a derived class object as if it were a base
class object
Subsections