首页 > 其他分享 >Go中的方法

Go中的方法

时间:2024-03-01 19:23:15浏览次数:18  
标签:Test 调用 Person test func Go 方法

基本介绍
golang中的方法是作用在指定的数据类型上的(和数据类型绑定的),因此自定义类型都可以用方法,而不仅仅是struct。
方法的声明和调用

type A struct{
    Num int
}
func(a A) test(){
    fmt.Println(a.Num)
}
  1. func(a A) test(){}表示A结构体有一个方法,方法名字为test
  2. (a A)体现test方法和A类型绑定的。
type Person struct {
	Name int
}
//Test方法是结构体Person的方法
func (p Person) Test() {
	fmt.Println("test()", p.Name)
}

func main() {
	//定义一个person实例
	var p model.Person
	p.Test() //test() 0
}
  1. Test方式和Person类型绑定。
  2. Test方法只能通过Person类型的变量来调用,而不能直接调用,也不能使用其他类型变量来调用。
  3. func(p Person)Test(){}中的p表示哪个Person变量调用,这个p就是一个副本,这个和函数的传参非常相似。
  4. p这个相当于一个变量名,可以随意修改。

标签:Test,调用,Person,test,func,Go,方法
From: https://www.cnblogs.com/mafu-blogs/p/18047733

相关文章

  • WinForm UI假死的解决方法
    方法一:async+await+Task//开始privateasyncvoidbtnStart_Click(objectsender,EventArgse){stringmessage=awaitGetMessage();MessageBox.Show(message);}//一个耗时任务privateasyncTask<string>GetMessage(){returnawaitTask<string>.Run(()......
  • golang中员工分组分页获取的一种方案
    在业务中,有一个场景,A系统需要提供一个接口,返回组织架构信息,供B系统入库,即B系统的组织架构是从A系统中同步过来的。这个场景下存在一个小问题,B系统期望A系统按照组织树层序遍历分页返回。这样B系统就不需要担心新增组织时找不到父级组织了。那么A系统要怎么做呢?方案1:在数据库......
  • 安装SQL Server需要重启电脑解决方法
    引用:https://www.cnblogs.com/marineblog/p/16118868.html报错信息:Acomputerrestartisrequired.YoumustrestartcomputerbeforeinstallingSQLServer1、ctrl+R键入regedit打开注册表2、依次展开 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionMan......
  • go中的结构体struct
    结构体的介绍:golang支持面向对象,是基于struct来实现OOP特性的,相当于Java中的class类。golang去掉了传统的oop语言的继承,方法重载,构造函数和析构函数,隐藏的this指针。golang仍然有面向对象编程的继承,封装和多态的特性。但是golang的继承没有extends关键字,继承是通过匿名字段来......
  • GNS3打开工程报错 --Dynamips error xxx:unable to create UDP NIO 解决方法
    GNS3打开工程报错--Dynamipserrorwhenrunningcommandxxx:unabletocreateUDPNIO报错原因:GNS3(v2.2)serverUDP连接端口号使用了10000-20000,NvidiaGeForceExperience也使用了相同的UDP端口号,发生冲突。解决方法:方法一:卸载NvidiaGeForceExperience,此过程不会......
  • 深入浅出Go语言:泛型入门指南
    深入浅出Go语言:泛型入门指南原创 麻凡 麻凡 2024-03-0109:00 湖南 听全文随着Go1.18版本的发布,泛型正式成为了Go语言的一部分。泛型为Go开发者带来了更强大的类型抽象能力,允许我们编写更加灵活和可复用的代码。本文将带你了解Go泛型的基础知识,让你快速上手这一新特......
  • (笔记)Linux下glog日志库的详细使用方法
     Glog是一个开源的C++日志库,它提供了非常方便的日志记录功能。下面是使用Glog的详细步骤: 一、安装Glog库您可以从Glog的官方网站(https://github.com/google/glog)下载Glog的源代码,然后进行编译和安装。在Linux系统下,您可以使用以下命令安装Glog库:sudoapt-getinstalllibg......
  • 《系统科学方法概论》第四章
    《系统科学方法概论》第四章主要涉及控制方法的内容,包括控制论、系统科学和管理科学等领域的知识和技术,以及如何解决复杂的系统问题。这一章节介绍了控制方法的基本原则,如反馈控制、前馈控制、最优控制和自适应控制等,以及控制方法的基本方法,如控制系统的建模、控制策略的设计和控......
  • 《系统科学方法概论》第五章
    《系统科学方法概论》第五章的主要内容涵盖了系统科学的基本原理和方法,特别强调了系统思维、系统论和系统方法在解决复杂问题中的应用。这一章节首先介绍了系统思维的概念和重要性,强调将事物视为整体,关注事物间的相互作用和关系,并通过分析和综合来理解系统的性质和行为。接着,章节......
  • 《系统科学方法概论》第一章
    常绍舜的《系统科学方法概论》第一章主要介绍了系统科学的基本概念、理论框架和思维方式。这本书的第一章为读者提供了系统科学的基础知识,包括系统思想的发展史、系统的定义及其内部基本关系、系统规律,以及系统方法的应用。在第一章中,作者首先阐述了系统科学的基本概念,强调系统是......