文摘
英文文摘
声明
第一章绪论
1.1研究背景
1.2国内外研究现状
1.3研究问题
1.4论文工作及组织结构
第二章基于别名分析的Java程序错误诊断技术
2.1软件维护
2.1.1软件维护的定义与分类
2.1.2程序维护中的纠错性维护
2.2别名分析技术
2.2.1 Java中别名关系的表示
2.2.2别名分析方法
2.2.3别名分析中的数据结构
2.3本章小结
第三章面向错误诊断的别名分析相关分析与设计
3.1面向对象程序中别名引起的问题
3.2面向对象程序Java中的别名分析问题
3.3别名分析步骤
3.4对象类型表
3.5类内别名分析方法
3.5.1带异常结构的控制流分析
3.5.2流敏感的别名分析
3.5.3别名关系图分析
3.6基于需求的类间别名分析方法
3.6.1实例成员访问分析与计算
3.6.2类间别名计算分析
3.7本章小结
第四章基于Eclipse的Java程序错误诊断工具实现
4.1别名分析工具简介
4.2抽象语法树
4.3程序静态信息的提取
4.3.1静态信息的数据结构
4.3.2变量和方法调用信息的获取
4.3.3定值和引用信息的获取
4.4方法调用图构造
4.5类内方法的别名信息处理
4.6方法内别名信息获取
4.6.1赋值语句的别名分析处理
4.6.2含初始化的指针别名声明语句的处理
4.6.3别名关系的消除与合并
4.6.4各种控制流语句的处理
4.6.5方法内别名信息的存储处理
4.7方法间的别名信息获取
4.7.1指针别名信息从调用点向被调用函数的传播
4.7.2方法调用点后指针别名信息的获取
4.8别名关系图构造
4.9基于需求的别名信息获取
4.10实验检验与分析
4.10.1实验代码选择
4.10.2实验结果与分析
4.11本章小结
第五章结束语
5.1本文工作总结
5.2进一步研究方向
致谢
参考文献
作者在读期间的研究成果