In object-oriented programming, a superclass is a class that provides attributes and methods to its subclasses, enabling code reuse and a hierarchical class structure. It forms the basis for inheritance, allowing subclasses to extend or override its functionality while maintaining a shared interface.