我必须解决以下TreeHouse Go挑战,但我仍然坚持使用Print方法。
要求:
在
clock
和calendar
个套餐中,我们定义了Clock
和Calendar
类型,这两种类型都有Display
方法。可以打电话来打印它们。 在schedule
包中,定义Displayable
和Display
类型Clock
方法满足的Calendar
接口。 (不要对clock
或calendar
包进行任何更改。)然后,仍然在schedule
包中,定义一个Displayable
1}}值并在其上调用Display
。
clock.go:
package clock
import "fmt"
type Clock struct {
Hours int
Minutes int
}
func (c Clock) Display() {
fmt.Printf("%02d:%02d", c.Hours, c.Minutes)
}
calendar.go:
package calendar
import "fmt"
type Calendar struct {
Year int
Month int
Day int
}
func (c Calendar) Display() {
fmt.Printf("%04d-%02d-%02d", c.Year, c.Month, c.Day)
}
schedule.go:
package schedule
// DECLARE A Displayable INTERFACE HERE
type Displayable interface {
Display()
}
// DECLARE A Print FUNCTION HERE (I'm stuck here)
谢谢!
答案 0 :(得分:2)
func Print(d Displayable) {
d.Display()
}