一尘不染

有关接口“所有已知实现”的文档

go

在学习Go的几个月中,我只是发现通过实现功能来os.File实现io.Reader接口Read(b []byte) (n int, err error)。这使我可以使用缓冲读取器通过执行以下操作来读取文件:

f, err := os.Open("myfile.txt")
bufReader := bufio.NewReader(f)

除非我错过了它,否则看起来像Java接口文档中的接口一样,接口的Go文档中没有“所有已知的实现类”。

有什么方法可以识别在Go中实现接口的类型?


阅读 214

收藏
2020-07-02

共1个答案

一尘不染

您可以使用godoc命令的静态分析工具找到所需的信息以及更多信息。在命令行中运行以下命令:godoc -http=":8080" -analysis="type"。使用文档,您可以找到哪些类型实现了接口以及为该类型设置的方法。

还有一个指针分析,可让您查找各种类型的呼叫者和被呼叫者。通道send <-–>接收分析非常简洁。

您还可以在http://golang.org/lib/godoc/analysis/help.html上阅读有关godoc工具完成的静态分析的更多信息。

2020-07-02