问答题假设系统中有三个类,分别为类A、类B和类C。在现有的设计中,让类A直接依赖类B,如果要将类A改为依赖类C,必须通过修改类A的代码来达成,请问这样的设计符合开闭原则吗?如果符合,请依据开闭原则进行解释,如果不符合请给出重构的方法。

问答题
假设系统中有三个类,分别为类A、类B和类C。在现有的设计中,让类A直接依赖类B,如果要将类A改为依赖类C,必须通过修改类A的代码来达成,请问这样的设计符合开闭原则吗?如果符合,请依据开闭原则进行解释,如果不符合请给出重构的方法。

参考解析

解析: 暂无解析

相关考题:

下列药物哪些属于浓度依赖性抗菌药物()。 A.糖肽类头孢菌素B.碳青霉烯类氨基糖苷类C.β-内酰胺类糖肽类D.氨基糖苷类硝基咪唑类

● UML类图中类与类之间的关系有五种:依赖、关联、聚合、组合与继承。若类A需要使用标准数学函数类库中提供的功能,那么类A 与标准类库提供的类之间存在(45)关系;若类 A 中包含了其它类的实例,且当类 A 的实例消失时,其包含的其它类的实例也消失,则类 A 和它所包含的类之间存在 (46) 关系;若类 A 的实例消失时,其它类的实例仍然存在并继续工作,那么类A 和它所包含的类之间存在 (47) 关系。(45)A. 依赖 B. 关联 C. 聚合 D. 组合(46)A. 依赖 B. 关联 C. 聚合 D. 组合(47)A. 依赖 B. 关联 C. 聚合 D. 组合

依赖性药物分几类A.二类B.三类C.四类D.五类E.六类

● 三若类A仅在其方法Method1中定义并使用了类B的一个对象,类A其它部分的代码都不涉及类 B,那么类 A 与类 B 的关系应为(1) ;若类 A 的某个属性是类 B的一个对象,并且类 A 对象消失时,类 B 对象也随之消失,则类 A 与类 B 的关系应为(2) 。(1)A. 关联 B. 依赖 C. 聚合 D. 组合(2)A. 关联 B. 依赖 C. 聚合 D. 组合

若类A仅在其方法Methodl中定义并使用了类B的一个对象,类A其它部分的代码都不涉及类B,那么类A与类B的关系应为( );若类A的某个属性是类B的一个对象,并且类A对象消失时,类B对象也随之消失,则类A与类B的关系应为( )。A.关联B.依赖C.聚合D.组合

●如果在一个课程注册系统中,定义了类CourseSchedule和类Course,并且在类CourseSchedule中定义了方法Add(c:Course)和方法Remove (c:Course),那么类CourseSchedule和类Course之间的是一种(18)关系。(18)A.包含B.实现C.依赖D.泛化

UML类图中类与类之间的关系有五种:依赖、关联、聚合、组合与继承。若类A需要使用标准数学函数类库中提供的功能,那么类A与标准类库提供的类之间存在(45)关系;若类A中包含了其他类的实例,且当类A的实例消失时,其包含的其他类的实例也消失,则类A和它所包含的类之间存在(46)关系;若类A的实例消失时,其他类的实例仍然存在并继续工作,那么类A和它所包含的类之间存在(47)关系。(62)A.依赖B.关联C.聚合D.组合

在UML类图中,类与类之间存在依赖(Dependency)等关系。依赖关系的标准UML图形表示是(44)。A.B.C.D.

● 若类A仅在其方法Method1中定义并使用了类B的一个对象,类A其它部分的代码都不涉及类 B,那么类 A 与类 B 的关系应为 (41) ;若类 A 的某个属性是类 B的一个对象,并且类 A 对象消失时,类 B 对象也随之消失,则类 A 与类 B 的关系应为 (42) 。(41)A. 关联B. 依赖C. 聚合D. 组合(42)A. 关联B. 依赖C. 聚合D. 组合

在设计模式演化时,必须定义一组设计类。其中,(30)实现软件管理和控制功能,使得系统能够运行并在其计算环境内与外界通信。A.用户接口类B.业务域类C.过程类D.系统类

城市用地分类采用大类、中类和小类三个层次的分类体系。下面哪项划分正确?( )A.6大类、40中类、60小类B.10大类、46中类、73小类C.10大类、56中类、79小类D.20大类、50中类、70小类

在面向对象分析和设计中,用类图给出系统的静态设计视图,其应用场合不包括( )。下图是一个UML类图,其中类University和类School之间是( )关系,类Person和类PersonRecord之间是(请作答此空)关系,表示Person与Person Record( )。A.依赖B.关联C.聚集D.泛化

在面向对象分析和设计中,用类图给出系统的静态设计视图,其应用场合不包括__1____。下图是一个UML类图,其中类University和类School之间是___2___关系,类Person和类PersonRecord之间是__3____关系,表示Person与Person Record___4___。2、____A.依赖B.关联C.聚集D.泛化

下列选项中,属于浓度依赖型抗菌药物的是( )A.多肽类B.青霉素类C.头孢菌素类D.林可霉素类E.氨基糖苷类

依赖性药物分几类()A二类B三类C四类D五类E六类

在3G系统中,我们把所有的业务大概分成四类,数据库搜索属于()。A、对话类B、流类C、交互类D、背景类

IP地址分为A、B、C、D、E五类,IP地址10.2.1.1和201.222.5.121的地址类别分别为()A、A类和B类B、A类和C类C、B类和A类D、C类和A类

关于抽象类和具体类,下列说法不正确的是()A、如果一个类有父类,该类就是具体类B、如果一个类继承了父类的抽象操作方法,而该类未提供实现,那么该类是抽象类C、抽象类没有任何直接的实例,而具体类则有直接实例D、在UML中,通过把一个类的名称写为斜体来指明该类是抽象类

在采用UML分析类与类的关系中,如果类A需要使用标准数学函数类库中提供的功能,那么类A与标准类库提供的类之间存在的关系是()A、依赖B、关联C、泛化D、聚集

在J2EE中,EJB文件包含三个class文件,它们是()。A、Applet,servlet和JavaBean类文件B、EJB类,Home接口和Remote接口C、EJB类,jar类文件和其他类文件D、客户类,商业类和服务类

关于抽象类的说法哪些是正确的?()A、抽象类中可以有非抽象方法。B、如果父类是抽象类,则子类必须重写父类所有的抽象方法。C、不能用抽象类去创建对象。D、接口和抽象类是同一个概念

在Java中,下面关于抽象类的描述正确的是()。A、抽象类可以被实例化B、如果一个类中有一个方法被声明为抽象的,那么这个类必须是抽象类C、抽象类中的方法必须都是抽象的D、声明抽象类必须带有关键字abstract

纺织产品的基本安全技术要求分为哪几类?()A、A类、B类、C类B、A类、直接接触皮肤类、B类C、A类、非直接接触皮肤类、B类D、A类、直接接触皮肤类、C类

在一个课程注册系统中,定义了类CourseSchedule和类Course,并在类CourseSchedule中定义了方法add(c:Course)和方法reInove(c:Course),则类CourseSchedule和类Course之间的关系是:()A、泛化关系B、组合关系C、依赖关系D、包含关系

单选题一个类库文件中可以包含许多类定义,每个类都有自己的名字。要修改某个类的名字,可以(  )。A在类设计器环境下,重新设置类的Caption属性值B在类设计器环境下,重新设置类的Name属性值C使用RENAME CLASS命令D不能修改,但可以删除类

单选题在一个课程注册系统中,定义了类CourseSchedule和类Course,并在类CourseSchedule中定义了方法add(c:Course)和方法reInove(c:Course),则类CourseSchedule和类Course之间的关系是:()A泛化关系B组合关系C依赖关系D包含关系

单选题IP地址分为A、B、C、D、E五类,IP地址10.2.1.1和201.222.5.121的地址类别分别为()AA类和B类BA类和C类CB类和A类DC类和A类