"接口的实现是隐式的"含义?

来源:1-4 接口的值类型

无敌一砖拍

2021-11-17 16:36:39

老师好,请教下课程中有句话"接口的实现是隐式的",是不是指的:接口的使用者只隐式实现接口需要的方法,具体接口的逻辑由实现者管理,如下:

```go
//接口retriever由使用者定义和隐式实现,但接口中方法的逻辑还是要由实现者定义
type  retriever interface {
  Get(url string) string
}
```


写回答

3回答

ccmouse

2021-11-17

是指实现retriever接口的对象不需要申明它实现了retriever接口,只需要它有

Get(url string) string函数即可。


对比的是java等传统“面向对象”语言,需要显示申明:

// java

class RetrieverImpl implements retreiver {

   public String Get(String url) {

        ....

   }

}


// go

type RetreiverImpl struct {}

func (r RetrieverImpl) Get(url string) string {

    ...

}

0

无敌一砖拍

提问者

2021-11-17

是不是这个意思:使用者定义了接口后,通过赋值语句等指定接口的实现者,从而实现了接口

0

无敌一砖拍

提问者

2021-11-17

是不是这个意思:使用者定义了接口后,通过赋值语句等指定接口的实现者,从而实现了接口

0

0 学习 · 1399 问题

查看课程