Inheritance is a fundamental concept in object-oriented programming (OOP) that promotes code reuse and extension. Through inheritance, a new class (called a subclass or derived class) can inherit attributes and methods from an existing class (called a superclass or base class). This allows the subclass to reuse the existing code of the superclass and extend or modify its behavior without altering the original code. For example, if a superclass defines common properties and methods for "Animal," subclasses like "Dog" and "Cat" can inherit these properties and methods while adding their specific behaviors. In contrast, procedural programming does not inherently support inheritance. Instead, it relies on functions and procedures, which can lead to code duplication when similar functionality is needed in different parts of the program. By promoting code reuse and extension, inheritance in OOP enhances modularity, maintainability, and scalability, allowing developers to build complex systems more efficiently and effectively.