Golang goroutine

Jackey Golang 1,903 次浏览 0 评论 ,
进程和线程介绍 进程就是程序在操作系统中的一次执行过程,是系统进行资源分配和调度的基本单位。 线程是进程中的一个执行实例,是程序执行的最小单元,它是比进程更小的能独立运行的基本单位。 一个进程可以创建和销毁多...

Golang 命令行参数

Jackey Golang 3,990 次浏览 1 评论
test.go package main import ( "fmt" "os" ) func main() { fmt.Println("命令行参数有:", len(os.Args)) for i, v := range os.Args { fmt.Printf("args[%v]=%v\n", i, v) } } linux执行命令编...

Golang 文件操作

Jackey Golang 3,427 次浏览 5 评论 ,
读取文件(带缓冲区) readFile.go package main import ( "bufio" "fmt" "io" "os" ) func main() { // 打开文件 file, err := os.Open("/Users/jackey/Downloads/3.txt") if err != nil { fmt.P...

Golang 类型断言

Jackey Golang 3,368 次浏览 0 评论 ,
示例 assert.go package main import "fmt" type Point struct { x int y int } func main() { var a interface{} var point Point = Point{1, 2} a = point var b Point b = a.(Point) //类型断言...

Golang 1.14 新特性整理

Jackey Golang 14,205 次浏览 0 评论
go mod modfile 引入 练习 目录结构: common |-go.mod mod1 |-demo14mod |-go.mod |-main.go 代码 common/go.mod module demo14mod go 1.13 require github.com/pkg/errors v0.9.1 mod1/main.go package ...

Golang 接口

Jackey Golang 3,393 次浏览 0 评论 ,
package main import "fmt" // 定义一个接口 type Usb interface { // 声明两个没有实现的方法 Start() Stop() } type Phone struct { } // 让Phone 实现Usb接口的方法 func (p Phone) Start() { fmt....

Golang 继承

Jackey Golang 4,168 次浏览 0 评论 ,
package main import "fmt" type Student struct { Name string Age int Score float64 } // 将公有的方法绑定到Student 结构体 func (s *Student) GetInfo() { fmt.Printf("学生姓名=%v, 年龄=%v,成绩=%v \...

Golang 封装

Jackey Golang 3,412 次浏览 0 评论 ,
person.go package model import "fmt" type person struct { Name string age int // 其他包不能访问 salary int } // 写一个工厂模式的函数,相当于构造函数 func NewPerson(name string) *person { r...

Golang 工厂模式

Jackey Golang 3,418 次浏览 0 评论 ,
student.go package model type student struct { Name string age int } // 结构体student 首字母小写,因此只能在 model 内部使用 // 如果想外部调用,我们可以通过工厂模式解决 func NewStudent(name string, age ...

go get 超时的解决方法

Jackey Golang 4,978 次浏览 0 评论
GO 1.13 及以上(推荐) Windows $ go env -w GO111MODULE=on $ go env -w GOPROXY=https://goproxy.cn,direct macOS 或 Linux $ export GO111MODULE=on $ export GOPROXY=https://goproxy.cn 然后再执行 go get

Golang 方法中指针传值的陷阱

Jackey Golang 3,083 次浏览 1 评论 ,
package main import "fmt" type Person struct { Name string } func (p Person) test1() { p.Name = "www.gopher.cc" fmt.Println(p.Name) } func (p *Person) test2() { p.Name = "www.gopher.cc" ...

Golang 结构体使用注意事项和细节

Jackey Golang 3,937 次浏览 3 评论 , ,
结构体的所有字段在内存中是连续的 代码: package main import "fmt" // 结构体 type Point struct { x int y int } // 结构体 type Rect struct { leftUp, rightDown Point } // 结构体 type Rect2 str...

Golang 切片在内存中的形式

Jackey Golang 3,122 次浏览 1 评论 ,
代码示例: package main import "fmt" func main() { var intArr [5]int = [...]int{1, 22, 33, 66, 99} slice := intArr[1:3] fmt.Println("intArr=", intArr) fmt.Println("slice 的元素是 = ", slice) fmt...

Golang 数组的内存布局

Jackey Golang 4,493 次浏览 2 评论 ,
如下面一段代码: package main import "fmt" func main() { var intArr [3]int fmt.Println(intArr) } 内存布局如下: 对上图的总结: 数组的地址可以通过数组名来获取 &intArr 数组的第一个元素...

Golang 单元测试

Jackey Golang 3,414 次浏览 0 评论 ,
在package main里定义一个函数Add,求两个数之和的函数,然后我们使用单元测试进行求和逻辑测试。单元测试的最常见以及默认组织方式就是写在以 _test.go 结尾的文件中,所有的测试方法也都是以 Test 开头并且只接受一个 testing.T 类...
Go