我在接受采访时遇到了这个问题。我回来后在SO上阅读了这篇文章并遇到了this,this和this,以及其他许多重复内容都说了几乎相同的内容。
我理解一般定义早于它们在编程语言中的实现。我也知道编程语言(我代表Java)试图尽可能地区分这两个定义。例如:Java将class
视为封装,因为它提供了一个包装器来保存所有类似的数据;而interface
是一种抽象。
但我真正想知道的是这两个定义是如何重叠的? Are the two subsets, overlapping, or completely disjoint sets.
我理解定义会改变为通用定义和语言特定定义,所以如果可以,或者至少提及你正在讨论的定义,请回答这两个定义。