我读过文章“NPATH:执行路径复杂性及其应用的一种方法”Nejmeh,ACM通讯1988年2月第188-200页,它没有提到关于try-catch-finally语句的NPath复杂性。
我推导出的公式是
NP(T-C-F) = (NP(try-range) + S(NP(catch)))*NP(finally),在哪里 {{2和
NP(finally) = NP(finally-range) or 1, if no finally block range is present,(这是一个有趣的问题,如果将java multicatch计算为带有NP(catch-expr)的多个分支的catch会增加其复杂性。)
我对CS主题领域的了解很少,所以我不确定我的公式是否正确,或者NPath复杂性的概念是否适用于异常处理代码。