Go语言圣经–接口约定习题详解编程语言
2023-06-13 09:20:37 时间
Go语言圣经-接口
1.接口类型是对其它类型行为的抽象和概括
2.Go语言中接口类型的独特之处在于它是满足隐式实现的
3.Go语言中还存在着另外一种类型:接口类型。接口类型是一种抽象的类型
4.一个类型可以自由的使用另一个满足相同接口的类型来进行替换被称作可替换性(LSP里氏替换)
练习 7.1: 使用来自ByteCounter的思路,实现一个针对对单词和行数的计数器。你会发现bufio.ScanWords非常的有用。
package main import ( "bufio" "fmt" "strings" func main() { var c WordsCounter fmt.Fprintf( c, "hello world 123") fmt.Println(c) //输出 3 练习 7.1: 使用来自ByteCounter的思路,实现一个针对对单词和行数的计数器。你会发现bufio.ScanWords非常的有用。 type ByteCounter int func (c *ByteCounter) Write(p []byte) (int, error) { *c += ByteCounter(len(p)) // convert int to ByteCounter return len(p), nil //定义类型 type WordsCounter int //满足相同接口的类型 func (w *WordsCounter) Write(p []byte) (int, error) { //分隔字符串 s := strings.NewReader(string(p)) bs := bufio.NewScanner(s) bs.Split(bufio.ScanWords) sum := 0 for bs.Scan() { sum++ *w = WordsCounter(sum) return sum, nil
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/12534.html
cgo相关文章
- 13.Go语言-接口
- Go语言之接口(二十)
- Go 编程 | 连载 18 - 接口 Interface
- Go 编程 | 连载 19 - 接口的应用
- 「Go工具箱」一个简单、易用的多错误管理包:go-multierror
- go-接口的嵌套和类型断言(二)
- Go语言接口和类型之间的转换
- Go语言error接口:返回错误信息
- Go基础之–接口详解编程语言
- Go从入门到精通(一)go语言初识详解编程语言
- Go-json解码到接口及根据键获取值详解编程语言
- Go语言Writer和Reader接口简述
- Go语言网络爬虫内部基础接口
- Go语言网络爬虫分析器接口
- Go语言make和new关键字的区别及实现原理
- Go语言接口内部实现
- 精通Go语言开发Redis应用(go语言redis开发)
- Go语言连接Oracle数据库实战(go连接oracle)
- 以Go语言操作MySQL:轻松运行数据库各种查询(go语言mysql)
- 新技术Go语言解析Oracle数据库日志(go解析oracle日志)
- 数据库Go语言实现监控Oracle数据库(go监听oracle)
- 数据库Go语言连接Oracle数据库的指南(go如何连接oracle)
- Oracle Go用法快速指南(oracle go用法)