zoukankan      html  css  js  c++  java
  • go方法

    go中的方法(method),跟函数(function)不是一个概念,一定要区分,它的概念与python中的类方法类似。

    go中是没有类的概念的,所以,go要想实现类 多种属性集合的功能的话,必须要使用结构体:

    type Person struct {
        Name string
        Age  int
    }
    其中:Person是结构体名称,Name和Age是结构体的属性,非常类似于python中的类属性

    python中要想实现一个类方法很容易,但是go中如何实现一个类似的功能呢?

    那就使用方法(method),这个方法跟函数(function)不是一个概念,一定要区分:

    type Person struct {
        Name string
        Age  int
    }
    # 定义类型(python的类)的方法
    func (p *Person) GetName() string {
        return p.Name
    }
    
    func (p *Person) GetAge() int {
        return p.Age
    }

    其中,Person相当于python中的类,在go中叫接收器类型,r是Person类型的实例化对象,
    GetName()、GetAge()是实例r的方法,也就是python中的类方法,
    调用也很简单,r.GetName() 即可。
    注意:接收器类型几乎可以是任何类型,但不能是指针类型和函数类型。
    
    
  • 相关阅读:
    gdb调试工具
    一步步理解Linux之中断和异常
    英语感受 5月份英语思维
    2013年6月4日星期二
    2013年5月29日星期三
    2013年6月3日星期一
    第22周六晚上
    2013年5月26日星期日
    2013年5月28日20:16:21
    2013年6月2日星期日
  • 原文地址:https://www.cnblogs.com/wt11/p/11863066.html
Copyright © 2011-2022 走看看