跳转至

7.方法

Go语言虽然没有提供类 class,但是提供了一种方法,可以使得使用type关键词自定义的类型关联一个方法(函数)。

type celsius float64
type kelvin float64

func (k kelvin) celsius() celsius{
    return celsius(k - 273.15)
}

kelvin a = 10
b := a.celsius()

上面代码中的(k kelvin)表示 类型参数的接收者 ,其中的k可以在函数中使用。

Info

一个函数最多只能有一个接收者且不能是go的预声明类型,如int float等。可以有多个参数。