1.ooad和uml_简答题_第1页
1.ooad和uml_简答题_第2页
1.ooad和uml_简答题_第3页
1.ooad和uml_简答题_第4页
1.ooad和uml_简答题_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1. 请回答:什么是OOAD?2. 一般开发软件过程的五大步骤是什么?3. 什么是OOP? 4. 什么是类?请对比类和对象实例之间的关系?5. Java程序怎么优化?6. JAVA中常用的设计模式?并说明工厂模式?7. 你在开发中都用到了那些设计模式?用在什么场合?8. 编程题: 写一个单例模式(Singleton)总体来说设计模式分为三大类:创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。一、OOAD和UML_选择题1. 请按软件开发的步骤对下列选项排序:( )A 测试B 分析C 实现D 需求E 设计参考答案:DBECA2. 以下哪些图属于静态建模:( )A 用例图B 协作图C 类图D 对象图参考答案:CDA3. 以下关于UML中的相关概念解释,请填写:( )是站在用户的角度上去展示系统的功能? A 用例图 B 类图C 协作图D 组件图参考答案:A4. 以下关于UML中的相关概念解释,请填写:( )是描述我们管理的问题域对象?A 用例图 B 类图C 协作图D 组件图参考答案:B5. 以下那种UML图例表明了关联关系:( )A -B -C -参考答案:A6. 以下哪种UML图例表明了聚合关系:( )A -B -C -参考答案:B7以下哪种UML图例表明了组合关系:( )A -B -C -参考答案:C8以下哪些模式属于23种设计模式?( )A:工厂B:代理C:适配器D:组合E:享元参考答案:ABCDE9. 在一个牛排咖啡摊所使用的系统里,有一系列的“风味牛排”。比如说菲利牛排、咖喱牛排、奶酪牛排等等。现在我们想用设计模式来描述牛排销售系统,该用下列哪种设计模式呢?() A 单键模式B 桥接模式C 享元模式D 观察者模式参考答案:C10OOAD的设计需要遵循下列哪些原则:( )A 开闭原则B 里氏代换原则C 最少覆盖原则D 接口隔离原则E 依赖倒转原则F 组合、聚合复用原则参考答案:ABCDEF11. 哪一种模式限制了创建类的实例数量?( )A 命令模式(Command) B 工厂方法模式(Factory Method)C 策略模式(Strategy) D 单例模式(Singleton)参考答案:D12. 装饰模式(Decorator)常常出现在Java的哪一个包中?( )A java.io B java.awt C java.lang D java.util参考答案:A13. 以下代码所用到的是单例模式的( )加载方式?代码:public class TestSingletton public static void main(String args) ClassA ca=ClassA.newInstance(); class ClassA private static ClassA instance=new ClassA(); public static ClassA newInstance() return instance; private ClassA()A:工厂模式 B:单例模式 C:饿汉式 D:代理模式 E:懒汉式参考答案:C二、1.OOAD和UML_简答题1. 请回答:什么是OOAD?参考答案:OOAD就是Object Orient Analysis & Design,即面向对象的分析和设计&面向对象分析与设计,是现代软件企业广为采用的一项有效技术。OOAD方法要求在设计中要映射现实世界中指定问题域中的对象和实体,例如:顾客、汽车和销售人员等。这就需要设计要尽可能地接近现实世界,即以最自然的方式表述实体。所以面向对象技术的优点即为能够构建与现实世界相对应的问题模型,并保持他们的结构、关系和行为为模式。2. 一般开发软件过程的五大步骤是什么?参考答案:1)需求,2)分析,3)设计,4)实现,5)测试。3. 什么是OOP? 参考答案:OOP是Object_oriented Programming(面向对象编程)的缩写。这主要是为了区别于以前的面向过程的程序设计!指的是用对象的观点来组织与构建系统,它综合了功能抽象和数据抽象,这样可以减少数据之间的耦合性和代码的出错几率。使用面向对象编程技术可以使得软件开发者按照现实世界里人们思考问题的模式编写代码,可以让软件开发者更好地利用代码直接表达现实中存在的对象,将问题空间直接映射到解空间。4. 什么是类?请对比类和对象实例之间的关系?参考答案:类,即class 在面向对象的程序设计中,专门用“类”来表示用户定义的抽象数据类型(user_defined abstract type)。它将具有相同状态、操作和访问机制的多个对象进行了抽象。类具有继承、数据隐藏和多态三种主要特性。利用类的这三种特性可以更好地表示现实世界中事物。类是同一类对象实例的共性的抽象,对象是类的实例化。对象通常作为计算机模拟思维,表示真实世界的抽象,一个对象就像一个软件模块,可以为用户提供一系列的服务-可以改变对象的状态、测试、传递消息等。类定义了对象的实现细节或数据结构。类是静态的,对象是动态的,对象可以看作是运行中的类。类负责产生对象,可以将类当成生产对象的工厂(Object factory)。6. JAVA中常用的设计模式?并说明工厂模式?参考答案:(1)Java中的23种设计模式:Factory(工厂模式),Builder(建造模式),Factory Method(工厂方法模式),Prototype(原始模型模式),Singleton(单例模式),Facade(门面模式),Adapter(适配器模式),Bridge(桥梁模式),Composite(合成模式),Decorator(装饰模式),Flyweight(享元模式),Proxy(代理模式),Command(命令模式),Interpreter(解释器模式),Visitor(访问者模式),Iterator(迭代子模式),Mediator(调停者模式),Memento(备忘录模式),Observer(观察者模式),State(状态模式),Strategy(策略模式),Template Method(模板方法模式), Chain Of Responsibleity(责任链模式)(2)工厂模式:工厂模式是一种经常被使用到的模式,根据工厂模式实现的类可以根据提供的数据生成一组类中某一个类的实例,通常这一组类有一个公共的抽象父类并且实现了相同的方法,但是这些方法针对不同的数据进行了不同的操作。首先需要定义一个基类,该类的子类通过不同的方法实现了基类中的方法。然后需要定义一个工厂类,工厂类可以根据条件生成不同的子类实例。当得到子类的实例后,开发人员可以调用基类中的方法而不必考虑到底返回的是哪一个子类的实例。8. 编程题: 写一个单例模式(Singleton)参考答案:一般Singleton模式通常有几种种形式:第一种形式: public class Singleton private Singleton()private static Singleton instance = new Singleton();public static Singleton getInstance() return instance; 第二种形式: public cl

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论