在做软件构造的时候,我一开始并不理解这两者之间的区别,后来随着实验的深入,我对于这二者之间的区别和联系有了一定的理解。
- 首先,接口代表着一种约定。在接口中,定义了相应的函数,一方面,使得接口实现者知道自己将实现的函数的功能;另一方面,使得接口使用者知道自己能够使用哪些函数,以及这些函数的功能是什么。
- 其次,ADT是一种抽象数据型,通常使用泛型实现。在数据结构课上,我们知道了ADT=数据+操作,为ADT使用者提供了他所需要的功能。
- 最后,抽象和具体之间的关系:利用抽象,比如实现抽象类,能够让我们的类具有更大的适用性,进而能够解决的问题也更多,但是随之而来有一个问题,就是类抽象程度越高,那么下层使用者就必须花更大的力气去修改它以适应自己的问题。另一方面,较具体的类虽然适用性较低,但是使用者可以不怎么修改就使用。