- 为类型添加方法
package main import ( "fmt" ) type Integer int func (a Integer) Less(b Integer) bool { return a < b } func main() { var a Integer = 1 if a.Less(2) { fmt.Println("Less true.") } } 结果输出:Less true.
- 只有在你需要修改对象的时候,才必须用指针
- 因为数组切片的内部是指向数组的指针,所以可以改变数组的内容
package main import ( "fmt" ) func modifyslice(array []int) { slice1 := array[1:2] fmt.Println(slice1) slice1[0] = 4 fmt.Println(slice1) fmt.Println(array) } func main() { modifyslice([]int{1,2,3}) } 结果输出: [2] [4] [1 4 3]
- Go语言放弃了例如继承等面向对象的概念,只保留了组合
- 接口的类型查询
var file1 Writer = ... if file5, ok := file1.(two.IStream); ok { ... }
有疑问加站长微信联系(非本文作者)