风趣探讨:为什么需要一个接口,一个接口的实现类,而不是直接调用类里的方法

之所以叫风趣探讨,我觉得这个话题非常有意思,也非常重要。

知乎上有个老哥说:能问这个问题,说明(1)你很会思考(2)编程水平还是处于起步阶段。(https://www.zhihu.com/question/20111251)

我觉得他说的很有道理。那么,这个问题,我们弄懂了,透彻了,并且身体力行了,我们的面向接口思想或许就能提升。


这样写的第一个作用:

“不如直接就在这个类中写实现方法岂不是更便捷”,你怎么保证这个接口就一个类去实现呢?如果多个类去实现同一个接口,程序怎么知道他们是有关联的呢?

可能有些同学还不知道我们探讨的具体是什么问题。这里给出例子

public abstract class Context {
public final class ContextImpl extends Context {

就如上面的文字部分所说,你怎么就保证了只有一个类会去实现这个接口呢?事实上,Context类的结构是这样的:


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部