go语言--方法与接口

时间:2025-02-24 19:27:32

方法与接口

  • 方法
    • 1.方法的定义
    • 2.方法和函数的区别与联系
    • 3.指针接收者(指针方法)
    • 4.方法与指针的重定向
  • 接口
    • 1.接口的定义
    • 2. 接口的使用
    • 3.接口的特点

方法

1.方法的定义

go语言中定义方法,首先需要定义结构体struct,然后就可以为结构题愉快的定义方法了。

package main

import (
	"fmt"
)

type People struct{
   
	age int
	name string
}

// People的sayName方法
func (people People) sayName(){
   
	fmt.Println(people.name)
}

func main() {
   
	man := People{
   18, "kinlonli"}
	woman := People{
   20, "zhangshan"}
	man.sayName()
	woman.sayName()
}

2.方法和函数的区别与联系

其实方法就是函数,他们都是为了定义一组操作的封装体。不过方法的是面向对象的,它与结构直接关联,可以直接通过结构体(java中的对象)直接调用,以 结构体.方法名 进行调用,具更高的封装性。

3.指针接收者(指针方法)

指针接收者在调用方法时候,调用前后是使用同一份内存的数据的,不会进行拷贝操作。因此频繁调用某个方法时,可以考虑使用指针,可以提升效率。

package main

import (
	"fmt"
)

type People struct{
   
	age int
	name string
}

// 只需要将People类型 -> *People类型
func (people *People) change(){
   
	people.age =