要依赖于抽象,不要依赖于具体。即针对接口编程,不要针对实现编程,是()

题目
单选题
要依赖于抽象,不要依赖于具体。即针对接口编程,不要针对实现编程,是()
A

开闭原则

B

接口隔离原则

C

里氏代换原则

D

依赖倒转原则

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

第1题:

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

A.尽量使用已有的类库

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

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

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


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

第2题:

开一闭原则(Open-Closed Principle,OCP)是面向对象的可复用设计的基石。开一闭原则是指一个软件实体应当对.(37)开放,对(38)关闭;里氏代换原则(Liskov Substitution Principle,LSP)是指任何(39)可以出现的地方,(40)一定可以出现。依赖倒转原则(Dependence Inversion Principle,DIP)就是要依赖于(41)而不依赖于(42),或者说要针对接口编程,不要针对实现编程。

(30)

A.修改

B.扩展

C.分析

D.设计


正确答案:B
解析:开-闭原则是指一个软件实体应当对扩展开放,对修改关闭,即在设计一个模块的时候,应当使这个模块可以在不被修改的前提下被扩展。里氏代换原则是指一个软件实体如果使用的是一个基类的话,替换成其子类也一定适用,即在所有基类出现的地方,其子类也一定可以出现。依赖倒转原则是指上层模块不应该依赖于底层模块,而应该依赖于抽象,而抽象不依赖于细节,细节依赖于抽象,即要针对接口编程,不要针对实现编程。

第3题:

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

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

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

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

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


参考答案:B

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

第4题:

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

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

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

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

D.尽量使用已有的类库


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

第5题:

试题(4)、(5)

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

(4)A.开闭

B.里氏替换

C.依赖倒置

D.接口隔离

(5)A.里氏替换

B.依赖倒置

C.接口隔离

D.最小知识


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

第6题:

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

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

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

C. 接口与实现不可分割

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


正确答案:A

第7题:

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

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

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

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

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


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

第8题:

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

(32)

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

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

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

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


正确答案:B


第9题:

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

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

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

C.接口与实现不可分割

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


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

第10题:

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

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

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

C.接口与实现不可分割

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


正确答案:A
针对接口编程能够将接口调用代码和接口实现代码相分离,提倡针对接口进行编程。

更多相关问题