golang: interface 使用

Go 语言提供了另外一种数据类型即接口,它把所有的具有共性的方法定义在一起,任何其他类型只要实现了这些方法就是实现了这个接口。

package main

type inter1 interface {
	F1()string
}
type inter2 interface {
	F2()string
}
type inter3 interface {
	F3()string
}
type inter0 interface {
	inter1
	inter2
}
type inter interface {
	inter0
	inter3
}
type A struct {}
type B struct {}
func(a A) F1() string{
	return "F1:A :aaaa..."
}
func(a A) F2() string{
	return "F2:A :aaaa..."
}
func(a A) F3() string{
	return "F3:A :aaaa..."
}
func (b B)  F1 ()string{
	return "F1:B :bbb..."
}
func (b B)  F2 ()string{
	return "F2:B :bbb..."
}
func (b B)  F3 ()string{
	return "F3:B :bbb..."
}
func test(w inter)  {
	println(w.F1())
	println(w.F2())
	println(w.F3())
}



func main() {
	a:=A{}
	b:=B{}
	test(a)
	test(b)
	}

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值