采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
视频中只演示了 Java 的 继承,如果是用 接口去实现呢,那不就是老师在 go 里所要讲的灵活的 duck typing 了吗?
这里说了<R extends Retriever>,其中Retriever就是一个接口。不用泛型的话写成String Download(Retriever r)。
在Java里我传进来的这个Retriever必须显式实现Retriever接口,不然的话即使他有get方法也不行(传统面向对象类型系统)。但是go语言中只要传进来的东西有get方法,就认为它是符合Retriever接口的,就可以传过来(duck typing)。
Java的传统面向对象类型系统带来的问题是如果我们同时需要Retriever接口和Poster接口,在Java里必须加一个RetrieverPoster接口,别人必须显式实现它。否则如果人家implements Retriever, Poster,那还是不能传过来。
登录后可查看更多问答,登录/注册
语法+分布式爬虫实战 为转型工程师量身打造
3.3k 14
515 1
1.8k 1
949 12