摘要:        
2.08 Go之使用空接口实现保存任意值的字典 需求描述 使用map和interface{}实现一个字典,可以存取任意类型的key和value 声明字典,设计设置值、获取值的函数 /* 声明一个字典结构 */type Dictionary struct { // 设置一个map属性,key和valu    阅读全文
posted @ 2022-02-28 09:42
俊king
阅读(264)
评论(0)
推荐(0)
        
            
        
        
摘要:        
2.07 Go之接口和类型之间的转换 什么是接口和类型之间的转换? Go语言中使用接口断言(type assertions)将接口转换成另外一个接口,也可以将接口转换为另外的类型。 类型断言的格式 格式: i.(T)。 i表示一个接口的类型和T表示一个类型 断言的基本格式: t := i.(T)/*    阅读全文
posted @ 2022-02-28 09:41
俊king
阅读(231)
评论(0)
推荐(0)
        
            
        
        
摘要:        
1.28 Go之接口的嵌套组合 接口嵌套组合的特点 一个接口可以包含一个或者多个其他的接口 只要接口的所有方法被实现,则这个接口中的所有嵌套接口的方法均可以被调用 系统包中的接口嵌套组合 type Writer interface { Write(p []byte) (n int, err erro    阅读全文
posted @ 2022-02-28 09:40
俊king
阅读(253)
评论(0)
推荐(0)
        
            
        
        
摘要:        
1.26 Go语言实现日志系统 利用前面提到的接口实现一个小的日志系统 设计思路: 命令行写入和文件写入 日志器+写入器 通过接口类型写入的方法 声明日志写入接口 后面的类型都是通过该接口的方法实现日志写入 /*声明日志写入接口,后面的类型都是通过该接口的方法实现日志写入*/type LogWrit    阅读全文
posted @ 2022-02-28 09:39
俊king
阅读(290)
评论(0)
推荐(0)
        
            
        
        
摘要:        
1.26 Go语言类型断言简述 什么是类型断言(Type Assertion) 一个使用在接口值上的操作。 作用: 检查接口类型变量所持有的值是否实现了期望的接口或者具体的类型 类型断言语法格式 value, ok := x.(T) x表示一个接口的类型,T表示一个具体的类型(也可为接口类型) 语法    阅读全文
posted @ 2022-02-28 09:38
俊king
阅读(193)
评论(0)
推荐(0)
        
            
        
        
摘要:        
1.26 Go接口的nil判断 特点 nil在Go语言中只能被赋值给指针和接口 显示地将nil赋值给接口时,接口的type和data都将为nil。此时,接口与nil值判断是相等的。 将一个带有类型的nil赋值给接口时,只有data为nil,而type不为nil,此时,接口与nil判断将不相等。 代码    阅读全文
posted @ 2022-02-28 09:37
俊king
阅读(415)
评论(0)
推荐(0)
        
            
        
        
摘要:        
1.26 Go语言之排序(sort.Interface接口) Go语言的sort函数 特点: Go语言的sort.Sort函数不会对具体的序列和它的元素做任何假设用了一个接口类型sort.Interface来指定通用的排序算法和可能被排序到的序列类型之间的约定。 接口的实现由序列的具体表示和它希望排    阅读全文
posted @ 2022-02-28 09:35
俊king
阅读(398)
评论(0)
推荐(0)
        
            
        
        
摘要:        
1.25 Go语言之接口 Go语言接口的特点 非侵入式 >编写者无须知道接口被哪些类型实现接口实现者只需知道实现的是什么样子的接口,但无须指明实现哪一个接口。编译器知道最终编译时使用哪个类型实现哪个接口,或者接口应该由谁来实现。 Go语言接口声明(定义) Go语言不是一种 “传统” 的面向对象编程语    阅读全文
posted @ 2022-02-28 09:33
俊king
阅读(271)
评论(0)
推荐(0)
        
            
        
        
摘要:        
1.24 Go之数据I/O对象及操作 Go语言实现基本I/O操作的包 Go语言标准库的 bufio 包中,实现了对数据 I/O 接口的缓冲功能 特点: 封装于接口 io.ReadWriter、io.Reader 和 io.Writer 中,并对应创建了 ReadWriter、Reader 或 Wri    阅读全文
posted @ 2022-02-28 09:31
俊king
阅读(113)
评论(0)
推荐(0)
        
            
        
        
摘要:        
Go之垃圾回收和SetFinalizer 什么是SetFinalizer(终止器)? 是与对象关联的一个函数。通过runtime.SetFinalizer设置 特点: 如果对象定义了Finalizer那么当他被GC的时候Finalizer就会被调用,触发例如发信号或者写日志等事件。 GC执行机制的特    阅读全文
posted @ 2022-02-28 09:30
俊king
阅读(131)
评论(0)
推荐(0)
        
 
                    
                     
                    
                 
                    
                
 
         浙公网安备 33010602011771号
浙公网安备 33010602011771号