Bir Go interface bir dizi method imzasını tanımlar — bir davranış sözleşmesidir. Çok önemlisi, arayüzler implicit (dolaylı) olarak karşılanır: belirtilen method'lara sahip herhangi bir tür otomatik olarak arayüzü karşılar, açık "implements" bildirimi olmaksızın. Bu yapısal, duck-typing yaklaşımı karakteristik ve güçlüdür.
Bir arayüzü tanımlama ve implicit olarak implementasyon
Speaker {
Speak()
}
Dog {}
Speak() { }
Cat {}
Speak() { }
s Speaker = Dog{}
s.Speak()
