go语言多态

package main

import "fmt"

type Human struct{ //定义了Human类
	name string
	gender string
}
func (this *Human) Eat(){
	fmt.Println("Human eat.....")
}
func (this *Human) Walk(){
	fmt.Println("Human walk ......")
}
type SuperHuman struct{//定义了个SuperHuman 类
	Human //go语言中这样可以继承啦
	id int

}
func (this *SuperHuman) Eat(){
	fmt.Println("我是神。。。。。。。")
}

func main() {
	superpeopele:=SuperHuman{Human{"neu","male"},1}
	fmt.Println(superpeopele)
	var s SuperHuman
	s.id=2323
	s.name="jiaqiang"
	s.gender="female"
	fmt.Println(s)
	var animal Animal
	animal=&Cat{"red"}
	animal.Sleep()
	animal.GetType()
}
//此处学习多态
type Animal interface {
	Sleep()
	Getcolor() string
	GetType() string
}
type Cat struct{
	color string//颜色
}
//继承借口只需要把接口的方法都重写一遍
func (this *Cat) Sleep(){
	fmt.Println("Cat is sleeping")
}
func (this *Cat) Getcolor() string {
	return this.color
}
func (this *Cat) GetType() string{
	return "Cat"
}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值