zoukankan      html  css  js  c++  java
  • 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())
    }

  • 相关阅读:
    C#开发规范
    Win32API使用技巧 -- 置顶应用
    Windows开发常用快捷键
    MarkDown简单语法回顾
    样本分布
    复变函数
    set theory
    Oscar的数理统计笔记本
    Oscar的拓扑笔记本
    c语言总结
  • 原文地址:https://www.cnblogs.com/iifeng/p/11488921.html
Copyright © 2011-2022 走看看