Go - Método

A linguagem de programação Go suporta tipos especiais de funções chamadas métodos. Na sintaxe de declaração do método, um "receptor" está presente para representar o contêiner da função. Este receptor pode ser usado para chamar uma função usando "." operador. Por exemplo -

Sintaxe

func (variable_name variable_data_type) function_name() [return_type]{
   /* function body*/
}

Exemplo

package main

import (
   "fmt" 
   "math" 
)

/* define a circle */
type Circle struct {
   x,y,radius float64
}

/* define a method for circle */
func(circle Circle) area() float64 {
   return math.Pi * circle.radius * circle.radius
}

func main(){
   circle := Circle{x:0, y:0, radius:5}
   fmt.Printf("Circle area: %f", circle.area())
}

Quando o código acima é compilado e executado, ele produz o seguinte resultado -

Circle area: 78.539816