Golang 结构体的方法

 

方法介绍

- 方法简介:

方法其实就是一个函数,
在 func 这个关键字和方法名中间加入了一个特殊的接收器类型。
接收器可以是结构体类型或者是非结构体类型。
接收器是可以在方法的内部访问的。

 

- 声明方法的语法:

func (t Type) methodName(parameter list) {
}
- (t Type) 接收器
- methodName 函数名
- paremeter list 参数

 

- 简单示例:

package main

import (
    "fmt"
)

type Employee struct {
    name     string
    salary   int
    currency string
}

/*
  displaySalary() 方法将 Employee 做为接收器类型
*/
func (e Employee) displaySalary() {
    fmt.Printf("Salary of %s is %s%d", e.name, e.currency, e.salary)
}

func main() {
    emp1 := Employee {
        name:     "Sam Adolf",
        salary:   5000,
        currency: "$",
    }
    emp1.displaySalary() // 调用 Employee 类型的 displaySalary() 方法
}

 

方法与函数的区别

 

匿名字段与非结构体上的方法

 

 

 

posted @ 2018-11-20 22:04  浮生凉年  阅读(1132)  评论(0编辑  收藏  举报