zoukankan      html  css  js  c++  java
  • Golang基础编程(二)函数、方法、接口

    一、函数

    Go 语言函数定义格式如下:

    func function_name( [parameter list] ) [return_types] {
       函数体
    }

    函数定义解析:

    • func:函数由 func 开始声明
    • function_name:函数名称,参数列表和返回值类型构成了函数签名。
    • parameter list:参数列表,参数就像一个占位符,当函数被调用时,你可以将值传递给参数,这个值被称为实际参数。参数列表指定的是参数类型、顺序、及参数个数。参数是可选的,也就是说函数也可以不包含参数。
    • return_types:返回类型,函数返回一列值。return_types 是该列值的数据类型。有些功能不需要返回值,这种情况下 return_types 不是必须的。
    • 函数体:函数定义的代码集合。

    函数-示例

    函数-调用

    输出结果:

    max: 24

    函数多返回值

    输出结果:

    Def Abc

    二、方法

    · Go中没有类,但是可以为结构体定义方法,方法就是一类带有特殊的接收者参数的函数。方法接收者在它自己的参数列表内,位于func关键字和方法名之间

    · 接收者可以是struct, interface,自定义的任意类型。但接收者声明必须在同一个包内,非内建类型。

     

    输出结果:

    Area.getArea=314.00

    备注补充:

    1. 在golang中有两个特殊的函数,main函数和init函数,main函数不用介绍在所有语言中都一样,它作为一个程序的入口,只能有一个。init函数在每个package是可选的,可有可无,甚至可以有多个(但是强烈建议一个package中一个init函数),init函数在你导入该package时程序会自动调用init函数,所以init函数不用我们手动调用,l另外它只会被调用一次,因为当一个package被多次引用时,它只会被导入一次。

    2.接收者是指针和非指针的区别,当接收者为指针时,我们可以通过方法改变该接收者的属性,但是非指针类型缺做不到。

    三、接口

    Go 语言提供了另外一种数据类型即接口,它把所有的具有共性的方法定义在一起,任何其他类型只要实现了这些方法就是实现了这个接口。

    接口-示例:

    输出结果:

    I am Nokia,I can call you

    I am IPhone,I can call you

    new函数

    表达式new(T)将创建一个T类型的匿名变量,所做的是为T类型的新值分配并清零一块内存空间,然后将这块内存空间的地址作为结果返回,而这个结果就是指向这个新的T类型值的指针值,返回的指针类型为*T。

    我们只需使用new()函数,无需担心其内存的生命周期或怎样将其删除,因为Go语言的内存管理系统会帮我们打理一切。

    空接口

    ·空接口可以用来承接任何不确定的类型

    ·空接口作为参数类型,可以传递任意类型

    输出结果:

    (<nil>,<nil>)

    (42,int)

    (hello,string)

  • 相关阅读:
    前端学习笔记2017.6.12 DIV布局网页
    前端学习笔记2017.6.12 HTML的结构以及xhtml、html、xml的区别
    前端学习笔记2017.6.21-html和浏览器的关系以及开发工具
    前端学习笔记2017.6.21-html是个什么东西
    前端学习笔记2017.6.21-引入JS文件的方法
    学习一下阿里技术文档的写作方法
    PS中图层混合模式的计算方法
    3dsmax里面的喷射器spray和超级喷射器superspray是个什么东西
    案例14-实现注册功能和激活功能
    012-MD5Utils工具类模板
  • 原文地址:https://www.cnblogs.com/qingfj/p/14856582.html
Copyright © 2011-2022 走看看