山东大学软件学院面向对象编程导论期末考试回忆版

Posted 叶卡捷琳堡

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了山东大学软件学院面向对象编程导论期末考试回忆版相关的知识,希望对你有一定的参考价值。

一、考试时间

2021年1月5日 8:30-10:30

本次考试为软件学院2019级大二下面向对象期末考试,具体的题目跟回忆版会有一定差距,可能有错误的地方,记不清了,还请见谅

二、考试范围

老师上课讲过的ppt,包含面向对象基础知识,设计原则,设计模式

类图要求掌握

重点内容在老师考前给的提纲上,老师说提纲以外的内容在考卷上的分值小于5%

三、考试题目

3.1 简答题(4*5 = 20分)

1.描述重写,重载,重定义有什么区别(要求写出一个类的代码,然后根据代码说明)

2.描述静态方法绑定和动态方法绑定,并从效率,忘了,忘了,三个方面对比两种绑定方式

3.描述什么是替换原则?描述三种内存分配方式?

4.代理有几种形式,分别有什么用途

3.2 设计题 (10+20+10+20 = 60分)

1.题目给出了一个UML图,里面描述了一个FileName类,继承String类。问这种方法违反了哪个设计原则,应该如何改进,画出改进后的类图

2.类图大致如下,SwitchToggle里还有一个构造方法没画上
在这里插入图片描述
(1)要求改进以上结构,设计一个开关类,这个开关类可以实现对灯泡和灯管都进行开启和关闭的操作,画出类图
(2)进一步拓展,要求这个开关类不仅能实现对电灯的控制,还能实现对电视,电冰箱,空调的控制,画出对应的类图,并写出关键代码,要求满足DIP原则

3.买股票,如果一个人买了一支股票,而这支股票的价格变动超过5%,就向所有股民发送消息,如果一个人将一支股票卖掉了,那么他不会收到消息。问用什么设计模式实现,要求画出类图和关键代码(发送消息的代码)

4.有一个计算机程序,可以实现绘图功能。现有一个Shape类,要对圆,三角形,矩形实现填充颜色和描绘轮廓的方法

(1)使用什么模式实现?画出对应的类图,写出关键代码
(2)将圆,三角形,矩形(具体的图形类)放入一个链表中,并打印输出

3.3 综合题(20分)

要求补全代码,使用策略模式。

题目的背景是给了一个Car类,这个Car类有两个子类。然后给了一个策略接口,策略类有两个对应的子类。这些类全部以类图的方式呈现

题目已经给出了部分代码,要求补全策略类接口的代码,还有Car类的代码,总共有5空,一空4分

四、后记

面向对象考试就这样结束了,总的来说,这次考试设计题有一定的难度,要求自己判断要用什么设计模式,并给出对应的类图,关键代码。综合题难度较低,简答题难度适中,掌握好重点内容问题应该就不大。

最后祝学弟学妹面向对象期末考试顺利!

以上是关于山东大学软件学院面向对象编程导论期末考试回忆版的主要内容,如果未能解决你的问题,请参考以下文章

山东大学软件学院算法设计与分析期末考试回忆版

山东大学软件学院操作系统概念期末考试回忆版

山东大学软件学院移动互联网开发技术期末考试回忆版

山东大学软件学院移动互联网开发技术期末考试回忆版

山东大学软件学院移动互联网开发技术期末考试回忆版

山东大学软件学院移动互联网开发技术期末考试回忆版