实现附加到接口的方法的下一种方法是否正确? (getKey
,getData
)
type reader interface {
getKey(ver uint) string
getData() string
}
type location struct {
reader
fileLocation string
err os.Error
}
func (self *location) getKey(ver uint) string {...}
func (self *location) getData() string {...}
func NewReader(fileLocation string) *location {
_location := new(location)
_location.fileLocation = fileLocation
return _location
}
答案 0 :(得分:4)
在Go中,您不需要明确说明您正在实现接口 - 如果某个类型具有接口所需的所有内容,则可以通过该接口使用它。因此,您无需在reader
内提及type location struct
。
见这里:http://golang.org/doc/effective_go.html#interfaces_and_types
答案 1 :(得分:1)
你基本上已经完成了。只要你给location的getKey和getData方法有效的body,* location就会实现reader接口。没有必要再做任何事了。