*File类型为什么能给到io.Writer类型中
只要一个类型,实现了一个接口的任意方法,都能隐式转换为该接口类型
可以看下具体的代码
// io.go
// io.Writer 接口定义
type Writer interface {
Write(p []byte) (n int, err error)
}
// file.go
// File结构体write方法
func (f *File) Write(b []byte) (n int, err error) {
// .......
}