Die Schnittstelle der Klasse sind die Klassenelemente (meist Funktionen), die für den Benutzer der Klasse zugänglich sind.
Beim Entwurf gibt es zwei sich widersprechende Ziele:
Eine vollständige Schnittstelle erfüllt alle vernünftigen Wünsche an die Klasse.
Eine minimale Schnittstelle, bietet so wenig Funktionen wie möglich an (also keine Redundanzen und überlappenden Funktionalitäten).