类型和类

栏目: Go · 发布时间: 6年前

内容简介:实际上method的定义可以依赖于所有的自定义类型。所谓自定义类型,就是通过type语句给一些内置类型起了个"别名"后所定义的新类型。
  • golang里常规的类定义一般为如下形式:
type $name struct{
  property01 int
  property02 int
  }
  
 func (t * name) tfunc() {}
  • 这里一直有个 误解:struct充当了其他语言中的class关键字
  • 其实在Golang里, 类型就是类,所以我们说是类型的某个方法,类型实现了某个接口。
  • 以上定义应当解读为 property01是struct类型(别名name)的一个属性,tfunc是struct类型(别名name)的一个方法

实际上method的定义可以依赖于所有的自定义类型。所谓自定义类型,就是通过type语句给一些内置类型起了个"别名"后所定义的新类型。

type Sex string

func (s *Sex) change(){
    if *s == Sex("女") {
        *s = Sex("男")
    }
}
  • 以上定义应当解读为 tfunc是string类型(别名Sex)的一个方法

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Head First Design Patterns

Head First Design Patterns

Elisabeth Freeman、Eric Freeman、Bert Bates、Kathy Sierra、Elisabeth Robson / O'Reilly Media / 2004-11-1 / USD 49.99

You're not alone. At any given moment, somewhere in the world someone struggles with the same software design problems you have. You know you don't want to reinvent the wheel (or worse, a flat tire),......一起来看看 《Head First Design Patterns》 这本书的介绍吧!

html转js在线工具
html转js在线工具

html转js在线工具

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具