复杂约束的描述与分析.pptVIP

  • 11
  • 0
  • 约1.43千字
  • 约 7页
  • 2019-10-23 发布于天津
  • 举报
除此之外,还需要符合一些特定的约束 在完成某特定的功能时,需要调用对象上的一组API来协同完成。在调用这些方法时,必须要遵守一些特定的时序约束。 例如:“打开” 文件后 要 “关闭” “关”中断后要“打开” 涉及单个对象的一般用状态机描述 Typestate 复杂约束的描述与分析 问题的提出 应用程序要符合编程语言本身的一些约束 例如: 对字符串不能做乘法操作 对数组的访问不能越界等等 由编译器来负责检查 主要在语义分析阶段 更复杂的例子:时序涉及多个对象 使用java.util.Iterator来遍历java.util.ArrayList ArrayList list = new ArrayListString(); for(int i=0;i10;i++){ list.add(i); } Iterator it = list.iterator(); list.add(10); while(it.hasNext()){ System.out.println(it.next()); } System.out.println(it.next()); 正确的使用方式 (如左所示) 约束1 调用iterator方法之后,不能再修改ArrayList的内容 约束2 调用next() 之前必须调用ha

文档评论(0)

1亿VIP精品文档

相关文档