By requiring subclasses to implement abstract methods.
Abstract classes ensure that subclasses provide specific functionality by defining abstract methods that must be implemented. This enforces a consistent interface across different implementations. For example, an abstract class `Shape` might require the implementation of `calculateArea()` and `calculatePerimeter()`, ensuring all shapes provide these calculations.