请问download方法里的接收者Retriever是结构体类型还是指针类型?

请问download方法里的接收者Retriever是结构体类型还是指针类型?

请问download方法里的接收者Retriever是结构体类型还是指针类型?为什么结构体名字是Retriever,接口名字也是Retriever?

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
慕移动5255713 2021-07-23 13:56:03

老哥,两个Retriever虽然名字相同,但是位于不同的包啊,要区分是结构体还是指针类型,你要看看引用的是哪个包的

  • 提问者 云九州9537598 #1
    不好意思我的问题没写清楚,我之前看的接口是这样: 1 定义一个接口,接口里有方法 2 定义一个方法,接受者为一个结构体类型,方法实现了接口里的方法 这节看下来,我的理解是 Main函数中定义了一个接口, 接口指向了real里的结构体 Real包的结构体Retriever里有get方法 那main函数那个包里的download函数里的又返回一个Get方法,所以两个Get Download里的get只是给real里的Get传一个网址?
    2021-07-23 14:10:54
  • 提问者 云九州9537598 #2
    简单一句就是main里的download是怎么调用的real里的get方法
    2021-07-23 14:34:23
  • 慕移动5255713 回复 提问者 云九州9537598 #3
    ducking type要好好理解一下,老哥,实际上这个跟java的多态有些类似,任何具有相同接口方法的结构体,都可以理解为实现了接口,具体调用哪个方法,就要根据download传参实际类似决定,你可以打印日志看看类型,或者直接断点调试看看,又或者看看其他讲go接口相关的知识
    2021-07-23 22:54:52
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师