Junior — Middle
Hoe kun je zeker weten dat de datastructuur de vereiste interface implementeert?
sobes.tech AI
Antwoord van AI
In Go, om te controleren of een structuur een interface implementeert, kan je een impliciete implementatie van de interface gebruiken — het is voldoende dat de structuur alle methoden van de interface heeft.
Voor een expliciete controle tijdens het compileren, wordt vaak een toewijzing van een lege interface aan een variabele met het type structuur toegevoegd:
var _ MyInterface = (*MyStruct)(nil)
Dit zorgt ervoor dat de compiler controleert of MyStruct MyInterface implementeert. Zo niet, dan is er een compileerfout.
Deze aanpak is handig voor documentatie en het vroegtijdig opsporen van implementatiefouten van interfaces.