| 1234567891011121314151617181920212223242526272829303132 |
- package main
- import "fmt"
- type IDuck interface {
- Quack()
- Walk()
- }
- func DuckDance(duck IDuck) {
- for i := 1; i <= 3; i++ {
- duck.Quack()
- duck.Walk()
- }
- }
- type Bird struct {
- // ...
- }
- func (b *Bird) Quack() {
- fmt.Println("I am quacking!")
- }
- func (b *Bird) Walk() {
- fmt.Println("I am walking!")
- }
- func main() {
- b := new(Bird)
- DuckDance(b)
- }
|