静动态结合的Java程序不变性分析方法

来源 :计算机学报 | 被引量 : 0次 | 上传用户:maimaizwy
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
程序的不变性(immutability)是指类的实例对象在其生命周期内状态不会发生改变.不变性信息可以用来指导程序的分析、测试和验证等工作.现有分析不变性的技术主要集中于对程序的静态分析,而动态分析方面的工作很少.文中在分析了静、动态分析技术各自的优缺点后,提出了一种静动态结合的混合分析技术.首先通过对程序进行静态分析,即对程序进行分析测试和验证,来获得初步的程序不变性信息,然后对静态分析的结果中不确定的部分再进行动态分析,即通过观察程序运行时各个对象的状态变化进行分析,同时还将动态分析用于对静态分析结果
其他文献
当前世界正面临着科学技术迅速发展的新时代,各国都充分估计到科技对人类社会的重要推动作用,纷纷把目光转向科学研究.日本为了走出多年经济低迷的困境,期望通过振兴科技,以
针对大规模非线性回归问题,提出基于静态储备池的Newton算法.利用储备池搭建高维特征空间,将原始问题转化成与储备池维数相关的线性支持向量回归问题,并应用Newton算法求解.鲁棒损
结合视频压缩标准、脆弱数字水印及视频通信技术,文中提出一种有效识别正版视频的TDIA算法.它包括嵌入算法和识别算法两部分.为消除通信干扰对水印的影响,将迭代方法引入识别算法.基于盗版操作与通信干扰的本质不同,研究讨论了迭代方法的性能.最后,基于迭代结果,借助Chernoff Bound理论,分析了TDIA算法的识别误差.对于码流BER(Bit Error Rate)10-3、视频I帧总数n360的
社会性标注作为一种新的资源管理和共享方式,吸引为数众多的用户参与其中,由此产生的大量社会性标注数据成为网页质量评价的一个新维度.文中研究如何利用社会性标注改进网页
2000年2月,澳大利亚全国创新峰会在墨尔本举行。在2天的时间里讨论了澳大利亚创新体系的现状、优势劣势、所面临的挑战等问题,以及如何建立能保持澳大利亚在国际上的竞争力的创
网格计算为地理分布资源的聚合以及大规模计算问题的解决提供了技术途径,国内外大型网格项目都是基于某种网格平台构建,通过这些平台管理着本领域的资源/服务,为了聚合不同网
目的:探究胸痛中心持续改进机制对急性ST段抬高型心肌梗见患者急救效率的影响。方法:回顾性分析我院胸痛中心2016年7月至2017年1月接治的87例急性ST段抬高型心肌梗无患者,按照入
目的:探讨综合糖脂代谢指标与冠状动脉(冠脉)病变程度的关系及其临床意义。方法:入选2012年3月至2013年12月于我院接受冠脉造影的717例患者,根据造影结果分为冠脉造影阴性的对照
狗是人类的好朋友,谁不想身边有这样一个伙伴呢?如果有条件,你想有一个什样的狗狗伙伴?下面这些狗狗有大有小、有胖有瘦,“可爱”是它们共同的特点。这里集合了5个品种的可爱狗狗,