Sobes.tech
Junior — Middle

Wat is het verschil tussen een methode en een functie, en wat zijn de kenmerken van hun gebruik?

sobes.tech AI

Antwoord van AI

In Go is een functie een onafhankelijk codeblok dat kan worden opgeroepen op basis van de naam en dat parameters kan accepteren en waarden kan retourneren.

Een methode is een functie die gekoppeld is aan een specifiek type (bijvoorbeeld een structuur). De methode wordt gedeclareerd met een receiver, die bepaalt tot welk type hij behoort.

Gebruikseigenschappen:

  • De methode maakt het mogelijk om te werken met gegevens van een specifiek type, door de receiver te gebruiken binnen de methode.
  • Methoden helpen bij het organiseren van de code en het implementeren van gedrag voor types, wat Go dichter bij objectgeoriënteerde stijl brengt.

Voorbeeld:

package main
import "fmt"

type Person struct {
    Name string
}

// Methode met receiver van type Person
func (p Person) Greet() {
    fmt.Println("Hallo, mijn naam is", p.Name)
}

// Gewone functie
func Add(a, b int) int {
    return a + b
}

func main() {
    p := Person{Name: "Ivan"}
    p.Greet() // roep de methode aan
    fmt.Println(Add(2, 3)) // roep de functie aan
}