简述针对接口编程,不针对实现编程的意义。

题目

简述针对接口编程,不针对实现编程的意义。

如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

以下关于面向对象技术的叙述中,说法错误的是(12)。

A.尽量使用已有的类库

B.尽量针对接口编程,而不要针对实现编程

C.尽量使用继承而不是聚合

D.面向对象设计最根本的意图是适应需求变化


正确答案:C
解析:面向对象设计最根本的意图是适应需求变化,其设计原则之一是针对接口编程,而不是针对实现编程。由于继承会使得类间的耦合性变大,因此使用类间聚合比使用类间继承好。

第2题:

以下关于面向对象的叙述中,说法正确的是(38)。

A.对象间的连接必须绑定到一个具体类的对象上

B.针对实现编程,而不是针对接口编程

C.优先使用继承而非组合

D.客户无须知道特定类,只需知道他们所期望的接口


正确答案:D
解析:面向对象的设计原则之一是:针对接口编程,而不是针对实现编程。针对接口编程能够将接口调用代码和接口实现代码相分离。遵循这个原则的好处有:①客户不必知道其使用对象的具体所属类;②客户无须知道特定类,只需知道他们所期望的接口;③一个对象可以很容易地被实现了相同接口的另一个对象所替换;④对象间的连接不必硬绑定到一个具体类的对象上,灵活性高;⑤增加了重用的可能性,提高了对象组合的机率;⑥松散耦合。

第3题:

设计模式(Design Pattem)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。下面关于设计模式所倡导的基本原则的描述,错误的是()

A.模块应对扩展开放,而对修改关闭

B.优先使用继承,而不是组合

C.要针对接口编程,而不是针对实现编程

D.抽象不应该依赖于细节,细节应当依赖于抽象


参考答案:B

设计模式所倡导的基本原则如下。
①开闭原则:一个软件实体应当对扩展开放,对修改关闭。在设计一个模块时,应当使这个模块可以在不被修改的情况下被扩展。关键在于抽象,抽象层要预见所有可能的扩展,因此,抽象层在任何扩展情况下都不会改变,即对修改关闭。同时,由于从抽象层导出一个或多个新类,可以有不同的实现,改变系统的行为,此即为对扩展开发。简而言之,抽象层对修改关闭,通过扩展实现改变系统行为。
②里氏代换原则:任何基类可以出现的地方,子类一定可以出现。
③依赖原则:要依赖于抽象,而不是具体实现。也可以这样说,要针对接口编程,不要针对实现编程。④接口分离原则:应当为客户端提供尽量小的单独的接口,而不是提供大的接口。
⑤组合复用原则:要尽量使用组合,而不是继承关系达到复用目的。
⑥迪米特法则:又叫最少知识法则,就是说一个对象应当对其他对象有尽可能少的了解。

第4题:

以下关于依赖倒置原则的叙述中,正确的是(39)。

A.要针对实现编程,而不是针对接口编程

B.在程序中尽量使用具体类进行编程,而少使用抽象层类

C.在程序代码中传递参数时或在组合关系中,尽量引用层次高的抽象层类

D.软件实体应对扩展开放而对修改关闭


正确答案:C
依赖倒置原则是指抽象不应该依赖于细节,细节应当依赖于抽象。换言之,要针对接口编程,而不是针对实现编程。在程序代码中传递参数时或在组合(或聚合)关系中,尽量引用层次高的抽象层类,即使用接口和抽象类进行变量类型声明、参数类型声明和方法返回类型声明,以及数据类型的转换等,而不要用具体类来做这些事情。为了确保该原则的应用,一个具体类应当只实现接口和抽象类中声明过的方法,而不要给出多余的方法,否则将无法调用到在于类中增加的新方法。实现开闭原则的关键是抽象化,并且从抽象化导出具体化实现,如果说开闭原则是OOD的目标,那么依赖倒置原则就是OOD的主要机制。有了抽象层,可以使得系统具有较好的灵活性,在程序中尽量使用抽象层进行编程,而将具体类写在配置文件中,这样如果系统行为发生变化,则只需要扩展抽象层,并修改配置文件,而无需修改原有系统的源代码,在不修改的情况下来扩展系统功能,满足开闭原则的要求。依赖倒置原则是COM、CORBA.、EJB、Spring等技术和框架背后的原则之一。

第5题:

下面关于面向对象的描述正确的是______。

A.针对接口编程,而不是针对实现编程

B.针对实现编程,而不是针对接口编程

C.接口与实现不可分割

D.优先使用继承而非组合


正确答案:A
解析:“针对接口编程,而不是针对实现编程”这是面向对象程序设计的一条重要准则,遵循此原则有以下好处:①使用者不必知道其使用对象的具体所属类;②使用者无需知道特定类,只需知道它们所期望的接口;③一个对象可以很容易地被(实现了相同接口的)另一个对象所替换;④对象间的连接不必硬绑定到一个具体类的对象上,因此增加了灵活性。

第6题:

● 下面关于面向对象的描述正确的是 (35) 。

(35)A. 针对接口编程,而不是针对实现编程

B. 针对实现编程,而不是针对接口编程

C. 接口与实现不可分割

D. 优先使用继承而非组合


正确答案:A

第7题:

试题(4)、(5)

遵守面向对象设计原则可以有效地提高系统的复用性和可维护性。应用 (4) 则可扩展已有的系统,并为之提供新的行为; (5) 则建议在面向对象程序设计中,应尽量针对接口编程,而不是针对实现编程。

(4)A.开闭

B.里氏替换

C.依赖倒置

D.接口隔离

(5)A.里氏替换

B.依赖倒置

C.接口隔离

D.最小知识


正确答案:A,B
试题(4)、(5)分析
本题考查面向对象设计的基础知识。
面向对象设计原则可以有效地提高系统的复用性和可维护性。开闭原则是指一个类应该对扩展开放,对修改关闭,从而实现系统行为的扩展。里氏替换原则是指子类型必须能够替换掉它的父类型,可以避免在多态应用中出现隐蔽的错误。依赖倒置原则是指高层模块不应该依赖于底层模块的实现,应针对底层模块的接口而非实现编程。接口隔离原则是指针对不同的客户需求分离接口,避免接口的误用。最小知识原则是指在设计系统时减少对象之间的交互,降低对象之间的耦合度和依赖关系,提高系统的可维护性。
参考答案
(4)A
(5)B

第8题:

系统调用编程接口主要通过C库____实现。


参考答案:LIBC

第9题:

在面向对象设计的原则中、( )原则是指抽象不应该依赖予细节,细节应该依赖于抽象,即应针对接口编程,而不是针对实现编程。

A.开闭 B.里氏替换 C.最少知识 D.依赖倒置


正确答案:D

第10题:

下列有关面向对象的叙述不正确的是(2)。

A.面向对象设计最根本的意图是适应需求变化

B.应尽量针对接口编程,而不要针对实现编程

C.尽量使用继承而不是聚合,因为继承使得类间的耦合性最小

D.尽量使用已有的类库


正确答案:C
解析:继承会使得类间耦合度大,因此聚合比继承更好。

更多相关问题