Inheritance allows subclasses to inherit and extend the functionality of parent classes. This allows for code reuse and is based on an "is-a" relationship between classes. The subclass inherits all properties and behaviors of the parent class. The extends keyword is used to create a subclass that inherits from an existing parent class. The super keyword refers to the parent class and can be used to invoke parent class methods and constructors from the subclass.