摘要: 一、第一种 package main import ( "fmt" ) func main() { var a float32 = 3.14 var x interface{} x = a b, ok := x.(float32) if ok { fmt.Printf("类型断言成功,b类型为%T\ 阅读全文
posted @ 2021-06-01 23:12 若雨蚂蚱 阅读(164) 评论(0) 推荐(0) 编辑
摘要: 一、基本介绍 实例具有多种形态。面向对象的三大特性,在GO语言中,多态的特征通过接口实现的,可以按照统一的接口来调用不同的实现,这时接口变量就是不同的形态. package main import ( "fmt" ) type Usb interface { Start() Stop() } typ 阅读全文
posted @ 2021-06-01 22:18 若雨蚂蚱 阅读(70) 评论(0) 推荐(0) 编辑
摘要: 1. 接口和继承解决的问题不同 继承的价值主要在于:解决代码的复用性和可维护性 接口的价值主要在于:设计,设计各种规范(方法),让其他自定义类型去实现这些方法 2. 接口比继承更加灵活 接口比继承更加灵活,继承满足is-a的关系,而接口只需要满足like-a的关系 3. 接口在一定程度上实现了代码解 阅读全文
posted @ 2021-06-01 21:46 若雨蚂蚱 阅读(239) 评论(0) 推荐(0) 编辑