-
type Animal struct {
Colour string
}
type Student struct {
Animal
Name string
Age int
}func (d *Student) Run() {
fmt.Println(d.Name, "is running")
}
func (d *Animal) Eat() {
fmt.Println(d.Colour, "is eating")
}查看全部 -
package struct_demo
import "fmt"
type Student struct {
Name string
Age int
}
func TestStudent() {
// 方式一
student := Student{
Name: "张三",
Age: 18,
}
fmt.Println(student)
// 方式二
student2 := Student{}
student2.Name = "李四"
student2.Age = 20
fmt.Println(student2)
// 方式三
var student3 Student
student3.Name = "王五"
student3.Age = 22
fmt.Println(student3)
// 方式四
newStudent := new(Student) //区别:new() 函数返回的是指向结构体的指针
newStudent.Name = "赵六"
newStudent.Age = 24
fmt.Println(newStudent)
}查看全部 -
make :
返回: 引用类型
切片,map,chan
new:
返回:指针类型
函数参数 Type 用于创建变量的数据类型
-----------------------
添加: append()
删除: delete()
拷贝 :copy()
----------------------
错误和异常:
defer func() {
message := recover()
switch message.(type) {
case string:
fmt.Println("type:", reflect.TypeOf(message), "panic message:", message)
case error:
fmt.Println("type:", reflect.TypeOf(message), "panic error:", message)
}
}()
//panic("test panic")
panic(errors.New("I am an error"))查看全部 -
func getLen() { mIDSliceDst := make([]string,2,5) //容量5个只是指无需操作内存了,而不是指能创建五个元素 mIDSliceDst[0] = "id1" mIDSliceDst[1] = "id2" fmt.Println(len(mIDSliceDst)) //长度 fmt.Println(cap(mIDSliceDst)) //容量 } func (){ mChan := make(chan int,1) mChan <- 1 // 往chan里面写数据 close(mChan) // 关闭后就不可以往chan里面写数据了,起到限制作用,一般项目里面会加个defer }查看全部 -
defer 执行完成所有程序后再执行defer后的程序
查看全部 -
message:=reocover()
查看捕获到的错误类型
message.(type)
查看全部 -
panic 抛出异常
recover 捕获异常
查看全部 -
delete只能删除“键值”,所以只适用于Map
查看全部 -
new()出来的,是指针类型
make()出来的,是引用类型
查看全部 -
fmt.println(reflect.TypeOf())
查看类型
查看全部 -
map[关键词类型]值类型
比如:
makeMap:=make(map[int]string)
makeMap["10"]="dog"
查看全部 -
main.go是go语言的一个入口文件
查看全部 -
make就是内建方法,类似创建内存
查看全部 -
内建方法-创建json数据或者数据对
1.切片数组
func makeSlice(){ mSlice :=make([]string,3) mSlice[0]="dog" mSlice[0]="cat" mSlice[0]="tiger" fmt.Println(mSlice) }
2.创建数据对map
func makeMap() { mMap :=make(map[string]string) mMap["name"]="大帅哥" mMap["age"]="12" mMap["lastname"]="小帅哥" fmt.Println() }
查看全部 -
2223
查看全部 -
接口
查看全部 -
make返回的是引用类型
查看全部
举报