go语言中的方法method

Posted 两脚任从行处来,一灵常与气相随。有时四大熏熏醉,借问青天我是

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了go语言中的方法method相关的知识,希望对你有一定的参考价值。

package main;

import "fmt"

//重新定义一个类型
//为该INT类型扩展方法
type INT int;

type A struct {
	name string;
}

type B struct {
	name string;
}

func main() {
	a := A{};
	a.Print();

	//指针传递
	a.Print2();
	fmt.Println(a);
	//同上
	(*A).Print2(&a);

	b := B{};
	b.Print();

	var c INT;
	c.Print();
}

//方法method
//GO中没有class,但有method

//为结构A绑定方法
func (a A) Print() {
	fmt.Println("A");
}

//指针传递
func (a *A) Print2() {
	//修改了变量的的值
	//方法中是可以访问结构的私有字段
	a.name = "A";
}

//为结构B绑定方法
func (b B) Print() {
	fmt.Println("B");
}

//给INT类型绑定Print方法
func (i INT) Print() {
	fmt.Println("INT");
}

  

以上是关于go语言中的方法method的主要内容,如果未能解决你的问题,请参考以下文章

Go基础学习四之函数function结构struct方法method

GO语言methodinterfacereflectionselect

go语言method有没有继承顺序,实例探讨

GO语言学习(十八)Go 语言接口

Go 语言接口

javaSE_07_方法