go语言 方法

go 语言中没有类,但是是有方法。

方法的定义:

  func (recevier type) methodName(参数列表)(返回值列表){ }

type School struct {Name stringAddr string
}func NewSchool(name, addr string) *School {return &School {Name:name,Addr:addr,}
}func (s *School) GetName() string {  //定义方法  s 接收者类型    GetName方法名字return s.Name
}func (s *School) GetAddr() string {return s.Addr
}
func testmodel(){school := NewSchool("北京大学","北京海淀区")fmt.Println(school.GetAddr()) //school.GetAddr 方法的调用fmt.Println(school.Getname())}
//运行结果
北京海淀区
北京大学

  方法和函数有什么区别呢?

函数可以说谁都可以调用,而方法只有接收者类型相同的才可以调用。当然了,定义上也是不同的,方法是包含了接收者的函数。

下面演示一个例子,说明方法接收者值传递和引用传递的区别

package mainimport ("fmt"
)type Int int                //自定义类型Intfunc (i *Int) add(a, b int) {   //接收者类型是Int类型的指针,引用类型*i = Int(a + b)return
}
func (i Int) Add(a, b int) {    //接收者类型是Int类型,值类型i = Int(a + b)return
}
func main() {var b Intvar c Intb.add(100, 200)  //300     些时传入的接者i是&b,就是变量b的地址相当于(&b).add(100,200),add方法内部:*(&b)=Int(100+200) 就是这个i指针指向的变量b的值改变为300fmt.Println(b)c.Add(100,200)    //值传递不带回主函数fmt.Println(c) // 0}

  

转载于:https://www.cnblogs.com/wanghaijun999/p/8157142.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/571351.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

android 获取加速度传感器值,Android开发获取传感器数据的方法示例【加速度传感器,磁场传感器,光线传感器,方向传感器】...

本文实例讲述了Android开发获取传感器数据的方法。分享给大家供大家参考,具体如下:package mobile.android.sensor;import java.util.List;import android.app.Activity;import android.hardware.Sensor;import android.hardware.SensorEvent;import and…

ocp oracle 考试报名_获得Oracle认证对拓展职业前景的影响

知识就是力量通过考试和考试成绩固然很重要,但您在学习过程中所掌握的知识才是您职业成功的坚实基础。在备考过程中,获得的知识和经验才是您真正的财富。Oracle Certified Associate (OCA):专员级别的认证能够证明学员具备基本技能&#xff0…

SpringMVC(2)—SpringMVC整合Spring的HelloWorld

一、这是一个SpringMVC框架的案例HelloWorld 功能&#xff1a;HelloWorld 二、SpringMVC运行流程 1.流程 请求——>springDispatcherServlet的url-pattern检查SpringMVC中是否存在对应的映射无&#xff1a;检查是否配置的<mvc:default-servlet-handler/>无&#xff…

mac android 录屏软件下载,苹果录屏app下载 苹果录屏 for Android V2.1.3 安卓手机版 下载-脚本之家...

苹果录屏是一款不错的手机录屏软件&#xff0c;该软件能帮助你录制流畅清晰视频&#xff0c;实现屏幕内容实时同步录制&#xff0c;录制视频流畅清晰不卡顿&#xff0c;需要的朋友可以下载使用。应用介绍苹果录屏&#xff0c;是一款免费屏幕录制软件&#xff0c;能帮助你录制流…

火箭技术术语_仿真优化火箭发动机 3D 打印制造工艺

台湾工业技术研究院(ITRI)为台湾创新空间(TiSPACE)提供增材制造(也称 3D 打印技术)服务&#xff0c;包括原始设计制造、重新设计和仿真等。TiSPACE 的固液火箭发动机中使用的燃料喷射器组件的 3D 打印过程为&#xff1a;首先&#xff0c;激光将第一层粉末熔化并融合到构建板上&…

车林通购车之家--购车计算器模块--保险

//car-calculator-bx.twig {{ include(jsq-nav.twig) }} <div class"switch-item active" id"bodya"><div class"top-layer2 clearfix"><div class"tit"><span>新车保险市场价</span></div><…

麒麟710f能否升级到鸿蒙系统,定了!麒麟710以上支持升级鸿蒙系统,荣耀也可以升级...

原标题&#xff1a;定了&#xff01;麒麟710以上支持升级鸿蒙系统&#xff0c;荣耀也可以升级华为Mate X2发布会上&#xff0c;余承东表示4月份推送手机版鸿蒙系统&#xff0c;距离首发日期越来越近。不少朋友关心&#xff0c;哪些机型支持鸿蒙系统&#xff0c;荣耀手机可以更新…

我的奇思妙想机器人消防员_我是小小消防员(绘画篇)|来啊~斗图啊~看一场奇思妙想SHOW!...

点击上方 “四川消防119” 关注我们来&#xff0c;来&#xff0c;来快来进入孩子们脑洞大开的世界吧&#xff01;自今年6月以来&#xff0c;我们火热开展了“暑期消防安全教育专项行动”之“我是小小消防员”儿童消防绘画、作文竞赛活动&#xff0c;吸引了全省幼儿园小盆友、小…

mysql数据备份(windows,linux)

今天我有个朋友让我帮他在windowServer服务器上备份一下mysql的数据库&#xff0c;于是花了一天的时间完成了一个每天定时备份数据库的功能&#xff0c;小编在这里为大家记录一下&#xff1a; 首先对于mysql命令行的导入导出作一个简单的梳理 一、导入 ①mysql -h主机 -u账号 -…

android5.1.1移植教程,iTOP4412开发板Android5.1.1移植教程

对于传统的操作系统来说&#xff0c;普通的 I/O 操作一般会被内核缓存&#xff0c;这种 I/O 被称作缓存 I/O。本文所介绍的文件访问机制不经过操作系统内核的缓存&#xff0c;数据直接在磁盘和应用程序地址空间进行传输&#xff0c;所以该文件访问的机制称作为直接 I/O。Linux …

岗位po是什么意思_劳务派遣是什么意思,劳务派遣和正式员工区别在哪

劳务派遣也是劳动活动的一种&#xff0c;虽然性质相对于临时工&#xff0c;但是劳务派遣仍然属于劳动合同法所调整的&#xff0c;不过与正式员工存在一定区别。因此接下来将由找法网小编为您介绍关于劳务派遣是什么意思&#xff0c;劳务派遣和正式员工区别在哪及其相关方面的知…

Android对性能要求,Android性能管理

管理Android设备的功耗和性能有助于确保应用程序在各种硬件上始终如一地顺畅运行。在Android 7.0及更高版本中&#xff0c;OEM可以实现对持续性能提示的支持&#xff0c;使应用程序能够保持一致的设备性能&#xff0c;并指定专属核以提高CPU密集型前台应用程序的性能。持续性能…

BZOJ 1878: [SDOI2009]HH的项链 | 莫队

题解: http://www.lydsy.com/JudgeOnline/problem.php?id1878 题解: 莫队板子题 核心思想是对区间的询问离线之后按照合理的顺序来优化复杂度 一般的做法是先分块,以左端点所在块为第一关键字,右端点位置为第二关键字排序 用两个指针来跑,这样可以证明的是时间复杂度为O(n√n)…

layui导航栏页面滚动固定_帮你搞定长滚动网页的设计!这5种设计策略需谨记!...

网站中的内容再好&#xff0c;总得让用户能看到&#xff0c;才有价值&#xff0c;而矛盾在于&#xff0c;首屏的空间始终是有限的。所以&#xff0c;我们总希望用户能够滚动页面向下看&#xff0c;从某种意义上来说&#xff0c;长滚动页面和无限滚动的设计&#xff0c;如此地受…

hdata datax交流总结

http://blog.csdn.net/zlm838687/article/details/74781522 hdata datax交流总结 今天和阿里云的同学就数据同步做了简要的交流&#xff0c;下面就交流的内容做一个总结 分片相关 datax目前可以支持单机(standalone)和集群模式(cluster).目前开源的是单机版本。无论是单机版本还…

南邮计算机专硕考研专业课,南京邮电大学(专业学位)计算机技术研究生考试科目和考研参考书目...

考研真题资料优惠价原价选择南京邮电大学(专业学位)计算机技术教材&#xff0c;也叫南京邮电大学(专业学位)计算机技术考研参考书、指定书目等等&#xff0c;是考验专业课复习过程中最重要的资料。考研是一种针对性很强的考试项目&#xff0c;参考书目由报考院校的研究生院制定…

ios 设置属性的center_【从0到1的Stata图表学习1】图例设置

导读规则&#xff1a;正文出现非加粗红色字体&#xff0c;对应Stata命令&#xff1b;正文中出现蓝色字体&#xff0c;对应往期链接&#xff1b;do文件中&#xff1a;"/**/"符号代表作者注释内容&#xff0c;帮助理解&#xff1b;"//"代表分节&#xff0c;便…

CentOS7 升级Python2.x到3.x

CentOS 7 中默认安装了 Python&#xff0c;版本比较低&#xff08;2.7.5&#xff09;&#xff0c;为了使用新版 3.x&#xff0c;需要对旧版本进行升级。由于很多基本的命令、软件包都依赖旧版本&#xff0c;比如&#xff1a;yum。所以&#xff0c;在更新 Python 时&#xff0c;…

计算机网络的应用领域有那些,计算机网络应用领域

描述计算机网络应用领域一、计算机网络在现代企业中的应用计算机网络的发展和应用改变了传统企业的管理模式和经营模式。在现代企业中企业信息网络得到了广泛的应用。它是一种专门用于企业内部信息管理的计算机网络&#xff0c;覆盖企业生产经营管理的各个部门&#xff0c;在整…

ffmpeg rtsp转hls_Qt音视频开发24-ffmpeg音视频同步

## 一、前言用ffmpeg来做音视频同步&#xff0c;个人认为这个是ffmpeg基础处理中最难的一个&#xff0c;无数人就卡在这里&#xff0c;怎么也不准&#xff0c;本人也是尝试过网上各种demo&#xff0c;基本上都是渣渣&#xff0c;要么仅仅支持极其少量的视频文件比如收到的数据包…