Go语言面向对象机制在入门第三节是如何讲解的?
- 内容介绍
- 文章标签
- 相关推荐
本文共计529个文字,预计阅读时间需要3分钟。
Go语言面向对象编程的特点:
1.数据和行为封装:定义一个结构体type Employee,封装数据和行为。
Go语言面向对象编程
Go语言的面相对象和主流语言有很大的不同,如Go 语言里是不支持继承,Go语言的接口实现也不太一样
1. 数据和行为的封装
- 数据的封装
- 定义一个结构体
- 使用实例里的值
PS:使用new关键字会返回结构体的指针、使用.就可以直接访问指针指向的结构体内的元素
- 行为的封装
- 行为(方法)的定义在这个例子里,我们任然使用上面已经定义好了的结构体。定义一个结构体的行为只要在这个函数前面
2. 接口
- 接口的定义和实现一个接口
可以看见,Go语言的接口实现完全没有看见依赖。实现接口的结构体只需要拥有和接口一样函数名和函数签名的函数就可以认为他实现了接口
因为接口的实现是非入侵性的,Go可以实现先定义实例,后面再去提出公共部分
- 接口的使用如下
3. 扩展与复用
用于Go不支持继承,因此Go语言的扩展也变成了Go语言里争议最大的部分
- 扩展的实现方式
本文共计529个文字,预计阅读时间需要3分钟。
Go语言面向对象编程的特点:
1.数据和行为封装:定义一个结构体type Employee,封装数据和行为。
Go语言面向对象编程
Go语言的面相对象和主流语言有很大的不同,如Go 语言里是不支持继承,Go语言的接口实现也不太一样
1. 数据和行为的封装
- 数据的封装
- 定义一个结构体
- 使用实例里的值
PS:使用new关键字会返回结构体的指针、使用.就可以直接访问指针指向的结构体内的元素
- 行为的封装
- 行为(方法)的定义在这个例子里,我们任然使用上面已经定义好了的结构体。定义一个结构体的行为只要在这个函数前面
2. 接口
- 接口的定义和实现一个接口
可以看见,Go语言的接口实现完全没有看见依赖。实现接口的结构体只需要拥有和接口一样函数名和函数签名的函数就可以认为他实现了接口
因为接口的实现是非入侵性的,Go可以实现先定义实例,后面再去提出公共部分
- 接口的使用如下
3. 扩展与复用
用于Go不支持继承,因此Go语言的扩展也变成了Go语言里争议最大的部分
- 扩展的实现方式

