
struct-one
golang面向对象编程
Golang也是支持对象编程OOP,Golang支持面向对象编程特性Golang没有类class,通过结构体来实现面向对象编程Golang的面向对象编程非常简单,没有继承、方法重载、构造函数和析构函数等;Golang的继承是通过匿名字段来实现Golang是面向对象接口编程的,耦合性低
结构体demo
- 一类事物的特性提取出来(比如猫类),形成一个新的数据类型,就是一个结构体
- 通过结构体来创建多个变量(实例对象)
- 事物可以是
Cat,Person,Fish等不同的类 - 通过
type和struct来进行定义 - 结构体是值类型,默认是值拷贝
1 |
package main |
总结
- 结构体是自定义的数据类型,代表的是一类事物
- 结构体变量(实例)是具体的,实际的,代表的是一个具体变量
结构体声明
- 字段声明的语法同变量是一样的
- 字段的类型可以是:基本类型、数组或者引用类型
- 创建一个结构体变量后,如果么有给字段赋值,对应为零值
- 布尔对应为false
- 数值是0
- 字符串是“”
- 指针、切片和
map的零值都是nil,还没分配空间,需要用make进行初始化
- 不同结构体变量的字段是相互独立的,互不影响;一个字段的修改不会影响到另一个
1 |
// 声明结构体 |
1 |
package main |




近期评论