golang接口可以嵌套嗎
在Go語言中,不僅結構體與結構體之間可以嵌套,接口與接口間也可以通過嵌套創造出新的接口。
一個接口可以包含一個或多個其他的接口,這相當于直接將這些內嵌接口的方法列舉在外層接口中一樣。只要接口的所有方法被實現,則這個接口中的所有嵌套接口的方法均可以被調用。
比如接口 File 包含了 ReadWrite 和 Lock 的所有方法,它還額外有一個 Close() 方法。
type ReadWrite interface { Read(b Buffer) bool Write(b Buffer) bool } type Lock interface { Lock() Unlock() } type File interface { ReadWrite Lock Close() }