码迷,mamicode.com
首页 > 其他好文 > 详细

go变量、类的概念以及类的使用方式,嵌套结构体

时间:2020-06-09 00:05:06      阅读:96      评论:0      收藏:0      [点我收藏+]

标签:简洁   注入   结构体   一个   fir   类型   pre   hang   变量   

go变量、类的概念以及类的使用方式,嵌套结构体

Go变量

  • go使用var声明变量,当声明变量时,这个变量对应的值总是会被初始化。这个值要么用指定的值初始化,要么用零值(即变 量类型的默认值)做初始化。对数值类型来说,零值是 0 ;对字符串来说,零值是空字符串;对 布尔类型,零值是 false。 
package main

import "fmt"

func main()  {

    var age int
    fmt.Println(age)

    var name string
    fmt.Println(name)

    var status bool
    fmt.Println(status)
}
  • 还有一种简洁声明变量并赋值的方式。
    first_name := "zhang"
    fmt.Println(first_name)

  

Go类的声明及使用

  • go中类的使用方式是用户自定义的结构体,使用struct关键字创建结构体。
type User struct {
    name string
    age int
    sex bool
}
  •  go类的使用赋值方式有两种,分别如下:
package main

import "fmt"

type User struct {
    name string
    age int
    sex bool
}

func main()  {

    // 第一种复制方式,键值对复制
    user := User{
        name: "张三",
        age:  12,
        sex:  true,
    }
    fmt.Println(user)

    // 第二种复制方式,按照顺序复制
    user_1 := User{"张三",12,true}
    fmt.Println(user_1)
}

Go类的嵌套结构体

  • 类的嵌套结构体,结构体注入,即在一个结构体中,声明定义另一个结构体,在一个类中注入另一个类,即可使用注入该结构体的属性
package main

import "fmt"

type User struct {
    name string
    age int
    sex bool
}

type Admin struct {
    user User
    account string
    password string
    login_status bool
}

func main()  {
    user := User{
        name: "张三",
        age:  12,
        sex:  true,
    }

    admin := Admin {
        user : user,
        account : "admin",
        password : "admin",
        login_status: false,
    }

    fmt.Println(admin.user.name)
    fmt.Println(admin.user.age)
    fmt.Println(admin.user.sex)
    fmt.Println(admin.account)
    fmt.Println(admin.password)
    fmt.Println(admin.login_status)
}

 

go变量、类的概念以及类的使用方式,嵌套结构体

标签:简洁   注入   结构体   一个   fir   类型   pre   hang   变量   

原文地址:https://www.cnblogs.com/will-xz/p/13053374.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!