Course Hive
Search

Welcome

Sign in or create your account

Continue with Google
or
Cap. 12 – Funções – 5. Interfaces & polimorfismo
Play lesson

Aprenda Go 🇧🇷 - Cap. 12 – Funções – 5. Interfaces & polimorfismo

5.0 (2)
47 learners

What you'll learn

This course includes

  • 21.3 hours of video
  • Certificate of completion
  • Access on mobile and TV

Summary

Keywords

Full Transcript

- Em Go, valores podem ter mais que um tipo. - Uma interface permite que um valor tenha mais que um tipo. - Declaração: keyword identifier type → type x interface - Após declarar a interface, deve-se definir os métodos necessários para implementar essa interface. - Se um tipo possuir todos os métodos necessários (que, no caso da interface{}, pode ser nenhum) então esse tipo implicitamente implementa a interface. - Esse tipo será o seu tipo *e também* o tipo da interface. - Exemplos: - Os tipos *profissão1* e *profissão2* contem o tipo *pessoa* - Cada um tem seu método *oibomdia()*, e podem dar oi utilizando *pessoa.oibomdia()* - Implementam a interface *gente* - Ambos podem acessar o função *serhumano()* que chama o método *oibomdia()* de cada *gente* - Tambem podemos no método *serhumano()* tomar ações diferentes dependendo do tipo: switch pessoa.(type) { case profissão1: fmt.Println(h.(profissão1).valorquesóexisteemprofissão1) [...] }* - Go Playground pré-pronto: https://play.golang.org/p/VLbo_1uE-U https://play.golang.org/p/zGKr7cvTPF - Go Playground ao vivo: https://play.golang.org/p/njiKbTT20Cr - Onde se utiliza? - Área de formas geométricas (gobyexample.com) - Sort - DB - Writer interface: arquivos locais, http request/response - Se isso estiver complicado, não se desespere. É foda mesmo. Com tempo e prática a fluência vem.

Course Hive

Continue this lesson in the app

Install CourseHive on Android or iOS to keep learning while you move.

Related Courses

FAQs

Course Hive
Download CourseHive
Keep learning anywhere