摘要: package main import "fmt" func main() { //声明一个变量,保存接受用户输入的选项 var key int //声明一个变量,控制是否退出for循环 loop := true //定义账户余额 balance := 10000.00 //每次收支的金额 mone 阅读全文
posted @ 2022-03-10 23:38 Star_Gazer 阅读(64) 评论(0) 推荐(0) 编辑
摘要: package main import "fmt" type Usb interface { Start() Stop() } //手机 type Phone struct { Name string } //相机 type Camera struct { Name string } //计算机 t 阅读全文
posted @ 2022-03-10 20:32 Star_Gazer 阅读(69) 评论(0) 推荐(0) 编辑
摘要: package main import "fmt" //继承与接口之间的区别 //猴子生来会爬树,为继承,猴子学会游泳,为接口 /* 当A结构体继承了B结构体,那么A结构体就自动继承了B结构体的字段和方法,并且可以直接使用 当A结构体需要扩展功能,同时不希望去破坏继承关系,则可以去实现某个接口即可, 阅读全文
posted @ 2022-03-10 18:23 Star_Gazer 阅读(144) 评论(0) 推荐(0) 编辑
摘要: package main import ( "fmt" "math/rand" "sort" ) //Hero结构体 type Hero struct { Name string Age int } //Hero结构体切片 type HeroSlice []Hero //实现interface接口 阅读全文
posted @ 2022-03-10 17:57 Star_Gazer 阅读(37) 评论(0) 推荐(0) 编辑
摘要: package main import "fmt" /* interface类型可以定义一组方法,但是这些不需要实现 并且interface不能包含任何变量 到某个自定义类型要使用的时候,再根据具体情况把这些方法写出来 基本语法 type 接口名 interface{ method1(参数列表)返回 阅读全文
posted @ 2022-03-10 16:32 Star_Gazer 阅读(75) 评论(0) 推荐(0) 编辑
摘要: package main import "fmt" type Usb interface { Start() Stop() } //手机 type Phone struct { } //相机 type Camera struct { } //计算机 type Computer struct { } 阅读全文
posted @ 2022-03-10 12:32 Star_Gazer 阅读(67) 评论(0) 推荐(0) 编辑
摘要: package main import "fmt" type testA struct { Name string age int } func (testa *testA) SayOk() { fmt.Println("testA Sayok", testa.Name) } func (testa 阅读全文
posted @ 2022-03-10 11:19 Star_Gazer 阅读(34) 评论(0) 推荐(0) 编辑
摘要: package main import ( "fmt" ) //继承可以解决代码复用,让编程更加接近人类思维 //当多个结构体存在相同属性和方法时,可以从这些结构体中抽象出结构体,在该结构体中定义这些相同的属性和方法 //其他结构体不需要重新定义这些属性和方法,只需要嵌套一个匿名结构体即可 //也就 阅读全文
posted @ 2022-03-10 10:20 Star_Gazer 阅读(277) 评论(0) 推荐(0) 编辑