• 8.golang 创建方法


    package main

    import (
    "fmt"
    "math"
    )

    type Movie struct {
    Name string
    Rating float32
    }

    /*
    创建方法: 创建方法 跟创建函数差不多,只是在func后面多了一个接受者,这个接受者可以被结构体引用,形成一种结构体的方法集
    并且使任何关联到结构体的方法,都能使用他拥有的方法集中的方法,这样就能形成封装功能和创建库代码的有效方法
    通过这种方法,我们可以理解成 一个类下面(golang中的结构体),所有方法(关联到这个结构体的所有方法)
    接收者参数声明为指针引用 和 值引用的差别(就是在接受者中,是否用* 星号符): 如果需要修改原始结构体,就使用指针;如果需要操作结构体,但不想修改原始结构体,就是用值
    方法声明方式: type ... struct{}

      在函数中添加接受者就成了方法了,接受者指向某个结构体(用 * [struct]),那么就是这个结构体的方法。


    */

    type Sphere struct {
    Radius float64
    }

    func (s *Sphere) jiOne() float64 { //圆的面积
    return float64(4)*math.Pi + (s.Radius * s.Radius)
    }

    func (s *Sphere) jiTwo() float64 { //圆的体积
    radiusCubed := s.Radius * s.Radius * s.Radius
    return (float64(4)/float64(3))*math.Pi + radiusCubed
    }

    func main() {
    s := Sphere{Radius: 5}
    fmt.Println(s.jiOne())
    fmt.Println(s.jiTwo())
    }

  • 相关阅读:
    给我买个糖?
    主题反馈
    Git:初始化项目、创建合并分支、回滚等常用方法总结
    tomcat
    tomcat
    docker
    oracle树形结构层级查询之start with ....connect by prior、level、order by以及sys_connect_by_path之浅谈
    java时间类Date、Calendar及用法
    java如何将html过滤为纯文本
    小记Java时间工具类
  • 原文地址:https://www.cnblogs.com/iifeng/p/11488921.html
Copyright © 2020-2023  润新知