一. 封装

  • 封装主要体现在两个方面:封装数据、封装业务
  • Go语言中通过首字母大小控制访问权限.属性首字母小写对外提供访问方法是封装数据最常见的实现方式
  • 可以通过方法封装业务
    • 提出方法是封装
    • 控制结构体属性访问,对外提供访问方法也是封装
  • 在面向对象中封装的好处:
    • 安全性.结构体属性访问受到限制,必须按照特定访问渠道
    • 可复用性,封装的方法实现可复用性
    • 可读写,多段增加代码可读性

二.代码实现

  • Go语言同包任意位置可以访问全局内容,封装控制可以控制包外访问结构体中数据 ```go type People struct { name string //姓名 age int //体重.单位斤 }

func (p People) SetName(name string) { p.name = name } func (p People) GetName() string { return p.name }

func (p *People) SetAge(age int) { p.age = age }

func (p *People) GetAge() int { return p.age } ```

  • 封装业务就是根据自己的需求提取代码,使用Go语言标准库中的函数过程就属性封装业务(代码)