Interfaces definen métodos abstractos que clases pueden implementar para establecer una estructura común. Una interfaz especifica qué métodos deben incluirse pero no su implementación. Las clases que implementan una interfaz deben implementar todos sus métodos. Las interfaces permiten herencia múltiple donde una clase puede implementar múltiples interfaces.