- 1、本文档共3页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
《软件安全》试卷 A
(试卷共3页,答题时间120分钟。答案全部写在答题纸上)
一、选择题(每小题1分,共10分)
1、解决缓冲区溢出的方法,以下不正确的一项是()。
A、积极检查边界 B、程序指针检查 C、注重程序应用性能 D、不让攻击者执行缓冲区内的命令
2、以下说法正确的一项是 。( )
A.任何软件都是不安全的 B.软件无响应一定是软件存在漏洞
C.黑盒测试就是分步检测软件代码 D.通过测试能够完全解决软件安全问题3、下列说法哪个是不正确的。( )
A.进程是线程的容器 B.单个进程可以包含多个线程
C.进程中不一定有线程 D.进程中一定有线程4、下列关于异常的描述中,错误的是( )
A.异常是一种经过修正后程序仍可执行的错误B.异常是一种程序在运行中出现的不可恢复执行的错误C.不仅Java语言有异常处理,C++语言也有异常处理
D.出现异常不是简单结束程序,而是执行某种处理异常的代码,设法恢复程序的执行5、下列关于抛出异常的描述中,错误的是 .
A.捕捉到发生的异常可在当前方法中处理,也可以抛到调用该方法的方法中处理B.在说明要抛出异常的方法时应加关键字throw异常列表
C.异常列表中可以有多个用逗号分隔的异常D.抛出异常的方法中要使用下述抛出异常语句:throw异常名;其中,异常名是
异常类的类名
6、以下哪一项不是软件生命周期中的阶段( )
A.设计阶段 B.分析阶段 C.维护阶段 D.销售阶段7、下列哪一项不是导致线程停止的方法( )
A.wait() B.sleep() C.join() D。stop()8、下列关于造成线程死锁条件的说法,错误的是( )。
产生线程死锁的四个条件是:互斥条件、请求与保持条件、不剥夺条件和循环等待条件
死锁的四个条件是充分条件C.死锁的四个条件是必要条件
D.死锁一般会在两个以上线程执行时产生
9、下面对静态成员的描述中,错误的是( )。A、静态成员的提出是为了解决数据共享问题
B、静态数据成员的初始化在类体外进行
本试卷共×页 第1页
C、类的不同对象有不同的静态数据成员值
D、静态成员函数可以直接访问类中的静态数据成员10、下列对封装性的描述中,错误的是( ).
封装体包含了属性和行为
封装体中的属性和行为的访问权限是相同的C.被封装的某些信息在封装体外是不可见的D.封装使得抽象的数据类型提高了可重用性
二、填空题(每空1分,共12分)
1、一般来说,软件的安全性隐患来源于以下4个方
面: 、 、 、 。
2、进程在内存中运行时,被分为3个区域,分别是: 、 、 。
3、解决整数溢出的方案包括 、 。
4 、 假 如 多 个 线 程 出 现 死 锁 情 况 , 排 除 死 锁 的 方 案为: 、 、 。
三、名词解释题(每题4分,共20分)1、类
2、进程
3、堆栈缓冲区
4、线程的生命周期
5、异常抛出
四、简答题:(每题5分,共25分)
1、在线程的生命周期中包括哪几种状态?
2、进程和线程有什么区别?
3、Java中,异常和错误的区别?
4、什么情况下会出现整数溢出?
5、怎样解决线程因抢占共享代码/资源而产生的结果错误?五、程序设计题:(第一题14分,第二题19分,共33分)1、回答问题,填写程序缺少部分,实现题目要求:
下面的程序在运行时会产生什么问题?(4分)
修改以下代码,解决出现的问题。(10分)publicclassP03implementsRunnable{
staticObjectS1=newObject(),S2=newObject();publicvoidrun(){
if(Thread.currentThread().getName().equals(th1)){synchronized(S1){
System.out.println(线程1锁定S1);synchronized(S2){
System.out.println(线程1锁定S2);
}
}
}
else{
synchronized(S2){
System.out.println(线程2锁定S2);synchronized(S1){
System.out.println(线程2锁定S1);
}
}
}
}
publicstaticvoidmain(String[]args){Threadt1=newThread(newP03(),th1);Threadt2=newThread(new
您可能关注的文档
- 如何在WinCC OA中实现消息对话框.docx
- 如何在语境中理解词语.docx
- 如何正确选择调节阀种类 参考资料.docx
- 如何撰写技术交底书指引精讲.docx
- 如何做好施工现场安全管理工作.docx
- 如何做好中小学校园保卫工作.docx
- 如何做一个有责任心的人解读.docx
- 如何做一个智慧型班主任.docx
- 儒学研究儒教与形而上学问题.docx
- 乳化剂在食品中的应用解读.docx
- (6篇)财政系统有关财政精神的演讲稿汇编.docx
- (5篇)住房和城乡建设局2024年工作计划汇编.docx
- (5篇)应急管理局2024年工作计划汇编.docx
- (5篇)科技局2024年工作计划汇编.docx
- (5篇)市生态环境局2024年工作计划汇编.docx
- (5篇)气象局2024年度工作计划汇编.docx
- 2024年某街道上半年工作总结.docx
- JB∕T 13501.1-2018 内燃机 大缸径活塞环 第1部分:通用规则.docx
- JB∕T 5082.5-2018 内燃机 气缸套 第5部分:钢质镀铬气缸套技术条件.docx
- GB_T 24141.2-2022 内燃机燃油管路用橡胶软管和纯胶管 规范 第2部分:汽油燃料.docx
文档评论(0)