接口是面向对象的数据结构吗?
如针对给定问题编写数据结构的采访问题有哪些解决方案看起来很像Iterfaces,接口和数据结构是否相同?
例如扑克牌的数据结构包括方法签名,看起来很像接口
答案 0 :(得分:1)
也许你应该检查What is the definition of "interface" in object oriented programming
“接口”可以有几个内涵,但是在OOP区域中,它可以被视为一个“契约”,即接口所实现的所有类(明确使用接口)都同意。它还涉及多态的概念(具有不同类型和数量的参数的函数)和覆盖(这是在使用它的类中“编写”已实现函数的特定代码时所做的事情) 。
我会说接口和数据结构不相同。数据结构是一个更通用的概念,包括几个普通的结构,如列表,数组,堆栈,哈希表等。接口不存储任何类型的数据,除了它自己的代码,并且如上所述,只获取实际意义实施时。
其他看待它的方法是考虑一个接口是一个实际的程序(有你选择的扩展)是否数据结构是在程序中使用的,通常包括在正在使用的语言的语法,或者可以使用其他工具和数据结构构建的语法(例如,您可以实现自己的节点,然后使用它们来实现我们自己的列表,然后修改它以创建堆栈等)