软件构造复习-18年期末试卷选择题

虽然通过老师下发的答题卡发现今年没有选择题,但还是总结了一下选择题希望能巩固一下自己的知识点。因为往年的教学大纲和今年的教学大纲有点不同,所以有些超纲的题目我就不在这里总结了,并且我会总结那种我认为比较有意义的题目,答案和思路仅供参考,若有疏忽,请指正,谢谢。
在这里插入图片描述
第一题一般都是考软件的三维视图,
在这里插入图片描述
通过三维视图我们可以发现,Memory dump是处在Run-time,Moment,Code-level层面的,故选C。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
首先第一个是只有在运行时才会发现数组越界。第二个是编译器编译的时候,原本只能传int,现在传了String,类型不匹配报错。第三个是没有问题的。第四个是空引用,是在运行时解析才发现是空引用。故选B。

在这里插入图片描述
先看第1个和第2个,前置:1<2,后置:1=2。故规约强度:1>2.然后看第1个和第3个,前置:3<1,后置:3>1,故规约强度3>1.故规约强度:3>1>2.选B。

在这里插入图片描述
首先看第一个方法,类是WordList,public WordList一看就是creator方法的格式。第二个是void方法,ADT里的方法就是单纯的内部改值,所以是mutator方法。第三个返回类型是跟creator类型一样的,所以应该是producer方法。第四个是返回了一个map,应该是observer方法。故选A。

在这里插入图片描述
C选项并没有提及表示暴露的情况,ADT内部都遵循RI,但是一旦表示暴露了,外部可以任意的改ADT的值,就有可能导致RI不满足,选C.

自反和对称性比较好看,应该是满足的。而传递性不满足在于Math.abs(p.od-this.id)<=5,假设A,B,C的id分别是5,9,13,AB满足,BC满足,但是AC不满足,差了8,所以不满足传递性,选A。

在这里插入图片描述
A是private方法改为public方法就对了,C的话子类抛出的异常不能比父类的还大,D参数列表不一样,就变成了重载而不是重写了,故选B。

在这里插入图片描述
A如果3错误应该跳到8而不是10。C的话应该得走13。D的话如果要引起IOException就不应该走7。故选B。

在这里插入图片描述
红色的两块如果一个获得a,一个获得c,就会死锁。

在这里插入图片描述
①如果线程b结束前没有被interrupt,则会打印ac。
②如果线程b在sleep的时候就被interrupt了,这时候就会打印bc。
而如果要打印ab的话就必然有c,即abc。不可能只有ab,故选C。

在这里插入图片描述
A左边不可以表示c,右边可以表示c,故不等价。B的话\w和[a-z]不等价。C的话d?就表示可有d也可没有d,然后右边的话c其实没什么用,前面括号里已经有c了,所以(c*|d)其实就是单纯的可有d可没有d,故是等价的。选C。

  • 3
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值