1. Inheritance allows one class to inherit properties from another class, creating a parent-child relationship between classes. 2. Polymorphism means a function can behave differently depending on its parameters. Method overloading and operator overloading are examples of polymorphism. 3. Overriding occurs when a child class replaces a method in the parent class that shares the same name and parameters. This allows the child class method to perform differently than the parent.