随笔分类 -  golang

摘要:main package main import "github.com/项目-家庭收支记账软件/面向对象/utils" func main() { utils.NewFamilyAccount().MainMenu() } familyAccount package utils import "f 阅读全文 »
posted @ 2022-03-11 00:08 Star_Gazer 阅读(54) 评论(0) 推荐(0) 编辑
摘要:package main import "fmt" func main() { //声明一个变量,保存接受用户输入的选项 var key int //声明一个变量,控制是否退出for循环 loop := true //定义账户余额 balance := 10000.00 //每次收支的金额 mone 阅读全文 »
posted @ 2022-03-10 23:38 Star_Gazer 阅读(65) 评论(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 阅读(71) 评论(0) 推荐(0) 编辑
摘要:package main import "fmt" //继承与接口之间的区别 //猴子生来会爬树,为继承,猴子学会游泳,为接口 /* 当A结构体继承了B结构体,那么A结构体就自动继承了B结构体的字段和方法,并且可以直接使用 当A结构体需要扩展功能,同时不希望去破坏继承关系,则可以去实现某个接口即可, 阅读全文 »
posted @ 2022-03-10 18:23 Star_Gazer 阅读(148) 评论(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 阅读(41) 评论(0) 推荐(0) 编辑
摘要:package main import "fmt" /* interface类型可以定义一组方法,但是这些不需要实现 并且interface不能包含任何变量 到某个自定义类型要使用的时候,再根据具体情况把这些方法写出来 基本语法 type 接口名 interface{ method1(参数列表)返回 阅读全文 »
posted @ 2022-03-10 16:32 Star_Gazer 阅读(78) 评论(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 阅读(73) 评论(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 阅读(35) 评论(0) 推荐(0) 编辑
摘要:package main import ( "fmt" ) //继承可以解决代码复用,让编程更加接近人类思维 //当多个结构体存在相同属性和方法时,可以从这些结构体中抽象出结构体,在该结构体中定义这些相同的属性和方法 //其他结构体不需要重新定义这些属性和方法,只需要嵌套一个匿名结构体即可 //也就 阅读全文 »
posted @ 2022-03-10 10:20 Star_Gazer 阅读(278) 评论(0) 推荐(0) 编辑
摘要:main.go package main import ( "fmt" "github.com/面向对象编程/面向对象编程思想/封装/model" ) /* 封装(encapsulation)就是把抽象出的字段和字段的操作封装在一起, 数据被保护在内部,程序的其他包只有通过被授权的操作,才能对字段进 阅读全文 »
posted @ 2022-03-09 14:49 Star_Gazer 阅读(112) 评论(0) 推荐(0) 编辑
摘要:package main import "fmt" //定义结构体的时候,实际上就是把一类失误的共有属性和行为提取出来,形成一个物理模型 //定义一个Account结构体 type Account struct { AccountNo string Pwd int Balance float64 } 阅读全文 »
posted @ 2022-03-09 13:57 Star_Gazer 阅读(31) 评论(0) 推荐(0) 编辑
摘要:访问私有字段 main.go package main import ( "fmt" "github.com/面向对象编程/工厂模式/model" ) func main() { // var stu = model.Student{ // Name: "tom", // Score: 78.9, 阅读全文 »
posted @ 2022-03-09 13:34 Star_Gazer 阅读(30) 评论(0) 推荐(0) 编辑
摘要:应用一 package main import "fmt" /* 1.声明(定义)结构体,确定结构体名 2.编写结构体的字段 3.编写结构体的方法 案例 1.编写一个Student结构体,包含name、gender、age、id、score字段,分别为string、string、int、int、fl 阅读全文 »
posted @ 2022-03-08 22:09 Star_Gazer 阅读(64) 评论(0) 推荐(0) 编辑
摘要:package main import "fmt" type Person struct { Name string } //函数 //对于普通函数,接受者为值类型时,不能将指针类型的数据直接传递,反之亦然 func test01(p Person) { fmt.Println(p.Name) } 阅读全文 »
posted @ 2022-03-08 21:22 Star_Gazer 阅读(67) 评论(0) 推荐(0) 编辑
摘要:package main import "fmt" //1.编写一个结构体(MethodUtils),编写一个方法,方法不需要参数,在方法中打印一个10*8的矩形,在main方法中调用 //2.编写一个方法,提供m和n两个参数,方法中打印m*n的矩形 //3.编写一个方法,计算该矩形面积(可接收长l 阅读全文 »
posted @ 2022-03-08 16:46 Star_Gazer 阅读(61) 评论(0) 推荐(0) 编辑
摘要:package main import ( "encoding/json" "fmt" ) type Point struct { x int y int } type Rect struct { leftUp, rightDown Point } type Rect2 struct { leftU 阅读全文 »
posted @ 2022-03-06 17:36 Star_Gazer 阅读(52) 评论(0) 推荐(0) 编辑
摘要:package main import "fmt" //如果用户名存在就将密码改为888888,不存在就新增该用户信息 func main() { user := make(map[string]map[string]string, 10) user["smith"] = make(map[stri 阅读全文 »
posted @ 2022-03-06 14:36 Star_Gazer 阅读(23) 评论(0) 推荐(0) 编辑
摘要:package main import ( "fmt" ) type Stu struct { name string age int grade float64 } func main() { //map是引用类型,遵守引用类型值传递的机制,在一个函数中接受map,修改后会直接修改原来的map / 阅读全文 »
posted @ 2022-03-06 14:15 Star_Gazer 阅读(47) 评论(0) 推荐(0) 编辑
摘要:package main import ( "fmt" "sort" ) func main() { //golang中没有一个专门的方法针对map的key进行排序 //golang中的map默认为是无序的,也不是按照添加的顺序存放的,每次遍历得到的输出可能不一样 //golang中的map排序,是 阅读全文 »
posted @ 2022-03-06 13:51 Star_Gazer 阅读(1290) 评论(0) 推荐(0) 编辑
摘要:package main import "fmt" func main() { /* 切片的数据类型如果是map,则成为slice of map map切片,使用map的个数就可以动态变化 */ monster := make([]map[string]string, 2) if monster[0 阅读全文 »
posted @ 2022-03-06 13:36 Star_Gazer 阅读(478) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示