Një ndërfaqe në Go përcakton një grup nënshënimesh metodash — një kontratë për sjelljet. Në mënyrë të përcaktuar, ndërfaqet plotësohen në mënyrë implicite: çdo lloj që ka ato metoda plotëson automatikisht ndërfaqen, pa asnjë deklaratë eksplicite "implements". Kjo qasje strukturale e duck-typing është dalluese dhe e fuqishme.
Përcaktimi dhe implementimi i nënkuptuar i një ndërfaqe
Speaker {
Speak()
}
Dog {}
Speak() { }
Cat {}
Speak() { }
s Speaker = Dog{}
s.Speak()
