gpt4 book ai didi

go - 在 serveHTTP 处理程序中调用接口(interface)方法和结构方法有什么区别?

转载 作者:IT王子 更新时间:2023-10-29 02:03:06 24 4
gpt4 key购买 nike

我正从 Java 转向 go。在“go”中,我在使用 Handler 时感到困惑。

例如:ServeHTTP(w http.ResponseWriter, req *http.Request)

这里的 ResponseWriter 是一个接口(interface),Request 是一个结构体。我们使用 w 作为对象来调用 ResponseWriter 接口(interface)中的方法。 req 对象也是如此。我知道一个结构可以实现一个接口(interface)。在这里,我展示了一个例子,我在哪里感到困惑。 Go Playground Link

最佳答案

没有区别。接口(interface)是你的变量/字段/参数的类型;该值仍然(很可能)是一个结构。这和Java是一样的,你可以指定一个方法参数是接口(interface)类型,但是你仍然必须传入一个concretion。在接口(interface)类型参数上调用方法与在具体类型上调用方法相同。

关于go - 在 serveHTTP 处理程序中调用接口(interface)方法和结构方法有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44594659/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com