
水一篇,与一位同行关于Java interface最初目的的讨论
首先我部分认同你的观点,也就是接口的作用不只多态一个,但我说的是接口的目的,而不是接口的作用,也就是说“作用”可以根据自己的需要并结合接口本身的特点来定义它在一个上下文中所承担的责任,比如你可以在开发规范中将接口定义为隔离关注点的工具(为什么不用分层来隔离关注点),这当然没问题,但这一定不是当初创造“接口”这个概念的人的目的,也就是说,除了多态外,接口的其他作用都是被后天赋予的,唯独多态是接口诞生的目的。比如可以通过接口表达关注点的分离,让使用者只关心接口能提供过的能力,而不用去关心具体的实现细节。














