classes, superclasses (or parent classes), subclasses (or child classes), class variables, objects, information hiding, encapsulation, abstraction, simple inheritance, multiple inheritance, polymorphism, duck typing, exceptions, and abstract base classes