• go,方法


    //方法,其实就是函数
    type Prince struct {
        name string
        age int
        sex int
    }
    //语法
    func (a Prince) GitName()  {
    }
    //方法给对象用
    func (a Prince)git()  {
        fmt.Println(a.name)
        fmt.Println(a)
    }
    //go中的方法可以想想成python中的类,在类中实例化的属性,让其函数可以使用,且是多个函数都可以
    //方法,其实就是函数
    type Prince struct {
        name string
        age int
        sex int
        Hobby
    }
    //匿名字段的方法
    type Hobby struct {
        id int
    }
    //查看id
    func (a Hobby) xxx()  {
        fmt.Println(a.id)
    }
    //查看name
    func (a Prince) qqq()  {
        fmt.Println(a.name)
    }
    func (a Prince) ccc(){
        a.Hobby.xxx()
    }
    
    
    
    
    
    func main() {
    
        var p = Prince{name:"yangxin",Hobby:Hobby{id:10}}
        p.xxx()
        //非正常查询,方法提升
        
        p.Hobby.xxx()
        //正常查询,Hobby即使名字也是类型

    //在方法中使用值接收器 与 在函数中使用值参数
    //在方法中使用指针接收器 与 在函数中使用指针参数

    type price struct {
        name string
        id int
        age int
    }
    
    func (a price)inner()  {
        fmt.Println(a.name)
    }
    func (a *price)inner1()  {
        fmt.Println(a.name)
    }
    func inner2(a price)  {
        fmt.Println(a.name)
    }
    func inner3(a *price)  {
        fmt.Println(a.name)
    }
    
    
    
    func main() {
    
        p:= price{name:"yangxin"}
        //调用值接收器
        p.inner()
        //调用指针接收器
        p.inner1()
        //调用值函数
        inner2(p)
        //调用指针函数
        inner3(&p)
        
        //不管是指针接受器还是值接收器,都可以使用值来调用
        //不管是指针接收器还是直接收器,都可以使用指针来调用
        // 函数中,是什么参数,就传什么参数
    //在非结构体上的方法
    
    
    //重命名
    type MyInt int
    
    
    func (i *MyInt)add()  {
        (*i)++
        fmt.Println(*i)
    }
    
    func main() {
        var a MyInt=10
        a.add()
        fmt.Println(a)
    }
  • 相关阅读:
    一、常用命令
    八、继承和聚合
    六、生命周期
    七、创建Web工程以及插件原理
    pl/sql developer学习总结
    Oracle创建用户及授权
    Oracle客户端安装
    oracle INS-13001 客户端安装-环境不满足最低要求
    ORA-28001: the password has expired密码过期
    ORA-28000--ORACLE用户被锁
  • 原文地址:https://www.cnblogs.com/yangxinpython/p/12030307.html
Copyright © 2020-2023  润新知