在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
书上看的。慢慢领会。。 package main import ( "fmt" ) type notifier interface { notify() } type user struct { name string email string } func (u *user) notify() { fmt.Printf("Sending user email to %s<%s>\n", u.name, u.email) } type admin struct { user level string } func (a *admin) nofity() { fmt.Printf("Sending admin email to %s<%s>\n", a.name, a.email, a.level) } func main() { ur := user{ name: "Bill smith", email: "[email protected]", } ad := admin{ user: user{ name: "John smith", email: "[email protected]", }, level: "super", } sendNotification(&ur) sendNotification(&ad) ad.user.notify() ad.nofity() } func sendNotification(n notifier) { n.notify() }
|
请发表评论