为了解决在使用基于Java建模语言(JML)契约的过程中存在维护困难、契约不能重用等问题,提出了一种JML契约与基于面向方面编程(AOP)的契约转换方法。首先给出了基于AOP的契约定义方法,并在分析JML和AOP语言的语法规则基础上,提出了AOP契约和JML契约之间的转换策略,为进一步实现基于AOP的契约到JML契约的自动转换奠定了基础。通过JML契约到AOP契约的转换,可以方便地实现契约的维护,而通过AOP契约到JML契约的转换,可以实现契约的重用以及自动检查。