本篇开始相当于go语言的面象对象部分,官方说,yes or no,可是可不是
1:给结构体添加行为方法时,传指针可以不复制数据
func (s Student) String() string
func (s *Student) String1() string
2.Go倡导更小的接口,很多接口只包含一个方法,大接口可以由多个小接口组成
3.os.exit不会调用defer函数,panic会调用defer
4.如果不想panic导致程序失败,打印信息,可以使用recover
defer func() {
if err := recover(); err != nil {
fmt.Print("recover")
}
}()
5.但是recover会导致形成僵尸服务进程,health check 失效,谨慎使用吧
6.如何自己写个包(模块):建个目录,下面的go file 的package都要一致,然后对外暴露的东西大写开头,init方法可以进行初始化,可以有多个init方法
有疑问加站长微信联系(非本文作者)