GO语言学习笔记(九、方法 method)

方法method

Go中虽没有class,但依旧有method

通过显示说明receiver来实现某个类型的组合

只能为同一个包中的类型定义方法

Receiver可以是类型的值或者指针

不存在方法重载

可以使用值或者指针来调用方法,编译器自动完成转换

从某种意义上说,方法是函数的语法糖,因为receiver其实就是方法所接收的第一个参数(Method Value vs. Method Expression)

如果外部结构和嵌入结构存在同名方法,则优先调用外部结构的方法

类型别名不会拥有底层类型所附带的方法

方法可以调用结构中的非公开字段

GO语言学习笔记(九、方法 method)

GO语言学习笔记(九、方法 method)