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

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

ID:32177404

大小:337.00 KB

页数:12页

时间:2019-02-01

静动态结合的java程序不变性分析方法_第1页
静动态结合的java程序不变性分析方法_第2页
静动态结合的java程序不变性分析方法_第3页
静动态结合的java程序不变性分析方法_第4页
静动态结合的java程序不变性分析方法_第5页
资源描述:

《静动态结合的java程序不变性分析方法》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、静动态结合的Java程序不变性分析方法于利前王林章雷斌赵建华李宣东(南京大学计算机软件新技术国家重点实验室南京210093)(南京大学计算机科学与技术系南京210093)摘要:程序的不变性(Immutability)是指类的实例对象在其生命周期内状态不会发生改变。不变性信息可以用来指导程序的分析、测试和验证等工作。分析程序的不变性主要有两种技术:一种是采用静态分析技术分析对象式程序的类、属性和方法等,获得程序不变性性质;另一种是通过观察程序运行时各个对象的状态变化来判断程序的不变性性质。静态分析具有可自动化、效率高等优点,但是因为静

2、态分析采取保守的分析策略,使得分析的精度不高。动态分析可以准确地观察对象的状态变化,但是分析的结果不完备,并且因为要多次运行程序,开销高。现有分析不变性的技术主要集中于对程序的静态分析,而动态分析方面的工作很少。本文在分析了静、动态分析技术各自的优缺点后,提出了一种静动态结合的混合分析技术。首先通过对程序进行静态分析以获得初步的程序不变性信息,然后对静态分析的结果中不确定的部分再进行动态分析,同时动态分析还可以用于对静态分析结果的验证。静动态结合的分析技术比单纯的静态分析提高了分析结果的精度,同时也降低了单纯用动态分析的开销,提高了

3、效率。关键词:不变性;静态分析;动态分析;混合分析中图法分类号:TP311CombinedStaticandDynamicImmutabilityAnalysisofJavaProgramYULi-QianWANGLin-ZhangLEIBinZHAOJian-HuaLIXuan-Dong(StateKeyLaboratoryofNovelSoftwareTechnology,NanjingUniversity,Nanjing210093)(DepartmentofComputerScienceandTechnology,Nanji

4、ngUniversity,Nanjing210093)Abstract:Anobjectisimmutableifitsstatecannotbechangedduringitslifecycle.Thischaracteristicofobjectiscalledimmutability.Theimmutabilityinformationcanbeappliedtoconductprogramanalysis,testing,verification,andsoon.Theanalysistechniquesofobjectim

5、mutabilitycanbeclassifiedintotwocategories:Oneisstaticanalysis,theotherisdynamicanalysis.Staticanalysiscanbeautomatic,butsinceitconsidersconservativeconditions,itsprecisionisnothigh.Dynamicanalysiswillrunaprogramtoobservethechangesofobjectstates,soitcanreportanobjectis

6、mutablewheneveritsstateischanged.Butdynamicanalysisisnotcomplete,evenifthestateofanobjectisnotchangedduringmanytimesofprogramexecution,wecannotconcludethattheobjectisimmutable.Alsothedynamicanalysiscostsalot.Considerboththeadvantagesanddisadvantagesofstaticanalysisandd

7、ynamicanalysis,wepresentahybridanalysistechniqueinthispaper,whichcombinesthestaticanddynamictechniquetoanalyzetheimmutabilityofJavaprogram.Wefirstanalyzeaprogramstatically,andthendynamicallychecktheundecidedpartsintheresultofstaticanalysis.Alsodynamicanalysiscanbeusedt

8、overifytheresultsofstaticanalysis.Thishybridanalysistechniquenotonlyincreasestheprecisionofstaticanalysisbutalsoreduc

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。