少说话多写代码之GO开发——006:go的数据类型 特殊数据类型-语言接口

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/yysyangyangyangshan/article/details/87958236

话接上回,看了go里面基本的数据类型,以及几个特殊的数据类型,接着看特殊的数据类型,语言数据类型。

看代码体会,在basicGrammar文件夹下新建文件grammar2.go,

grammar2.go

package basicGrammar
import "fmt"

type student interface{
	writeHomeWork()
}

type primaryStudent struct{

}

func (pstudent primaryStudent)  writeHomeWork() {
	fmt.Println("我的作业是:抄写古诗:画 远看山有色,近听水无声。春去花还在,人来鸟不惊。")
}

type juniorHighStudent struct{

}

func (jstudent juniorHighStudent) writeHomeWork(){
	fmt.Println("我的作业是:背诵滕王阁序:落霞与孤鹜齐飞,秋水共长天一色。")
}

type seniorHighStudent struct{

}

func(sstudent seniorHighStudent) writeHomeWork(){
	fmt.Println("我的作业是:议论文学习:过秦论 一夫作难而七庙隳,身死人手,为天下笑着,何也?仁义不施而攻守之势异也!")
}

func TestTypeInterface(){
	var person student
	
	fmt.Println("小学生")
	person = new(primaryStudent)
	person.writeHomeWork()

	fmt.Println("初中生")
	person = new(juniorHighStudent)
	person.writeHomeWork()

	fmt.Println("高中生")
	person = new (seniorHighStudent)
	person.writeHomeWork()
}

在mai中调用

package main

import "basicGrammar"
func main(){
	//特殊语法:语言接口
	basicGrammar.TestTypeInterface()
}


输出

API server listening at: 127.0.0.1:2345
小学生
我的作业是:抄写古诗:画 远看山有色,近听水无声。春去花还在,人来鸟不惊。
初中生
我的作业是:背诵滕王阁序:落霞与孤鹜齐飞,秋水共长天一色。
高中生
我的作业是:议论文学习:过秦论 一夫作难而七庙隳,身死人手,为天下笑着,何也?仁义不施而攻守之势异也!

把所有的具有共性的方法定义在一起,任何其他类型只要实现了这些方法就是实现了这个接口。

猜你喜欢

转载自blog.csdn.net/yysyangyangyangshan/article/details/87958236