分享

【工程基础】校招研发工程师笔试题

 老马的程序人生 2021-10-07

1、关于开闭原则,以下说法错误的是()

  • A. 一个软件实体应当对扩展开放,对修改关闭。
  • B. 开闭原则主要体现了面向对象的封装特性。
  • C. 抽象化是实现开闭原则的关键。
  • D. 如果一个系统在扩展时只涉及到修改配置文件,而原有的代码没有做任何修改,该系统也被认为是一个符合开闭原则的系统。

2、下面关于里氏代换原则说法错误的是()

  • A. 能够接受基类对象的地方必然能够接受子类对象。
  • B. 如果一个软件实体使用的是一个子类对象的话,那么它不一定能使用基类对象。
  • C. 如果一个方法只存在子类中,在基类中不提供相应的声明,则无法使用该方法。
  • D. 尽量把基类设计为抽象类或者接口,让子类继承基类或实现接口,并覆写或实现在基类中声明的方法,运行时用子类实例替换基类实例。

3、下面关于合成复用原则说法错误的是()

  • A. 尽量使用对象组合/聚合,而不是继承来达到复用的目的。
  • B. 从基类继承下来的实现是静态的,不可能在运行时发生改变,没有足够的灵活性。
  • C. 合成复用可以在运行时动态进行,新对象可以动态地引用与成员对象类型相同的其它对象。
  • D. 如果两个类之间是“Has-A”的关系应使用继承关系,如果是“Is-A”关系才使用关联关系。

4、下面关于迪米特法则说法错误的是()

  • A. 迪米特法则要求一个软件实体应当尽可能少地与其它实体发生相互作用。
  • B. 为了遵循迪米特法则可以通过引入一个合理的第三者Mediator来降低现有对象之间的耦合度。
  • C. 迪米特法则主要解决类的复用问题。
  • D. 迪米特法则中,对于一个对象,其朋友包括当前对象本身,以参数形式传入到当前对象方法中的对象,当前对象方法返回的对象等。

5、下列不属于依赖注入方式的是()

  • A. 构造注入
  • B. Setter注入
  • C. Getter注入
  • D. 接口注入

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多