OO第一单元总结
Posted mjh123
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了OO第一单元总结相关的知识,希望对你有一定的参考价值。
OO第一单元总结
程序分析
度量
类图
代码行数
BUG分析
中测发现的BUG(9个)
1 ArrayList未使用new构造新的对象
2 把括号换成其他符号,但是没有换回来
3 如果捕获组“P”不存在,那么m.start(“P”)和m.end(“P”)都返回-1,而substring方法要求数组下标大于零,导致异常。
4 Term类中乘法法则写成了加法法则
5 比如说!@!@这种情况,用.匹配!@中间的内容的话,把中间的@!就匹配上了。原本是两对括号,结果程序就认为只有一对括号。应修正为[^!@]
6 略
7 Factor类里捕获的表达式因子不应该连同括号,因为表达式因子的构造方法没有考虑括号。
8 Cos类和Sin类里,s3和s5中的origin应修正为fac.getOrigin
9 Factor类没有重写toString方法,但是Term类却用了Factor类的toString方法。改正:改为用Factor类的getOrigin方法。
2.强测和互测发现的BUG(3个)
1 格式错误但是没有输出WRONG FORMAT!解决方法:修改Factor类。
2 乘法求导法则出错。一个Term类对象求导,得到的是一个表达式(即多个Term类对象相加)。没有在这个表达式外面加一个括号,导致运算顺序(优先级)出现了问题。补个括号就行了
3 正确格式但是输出了WRONG FORMAT!。解决办法:在Factor类的正则表达式前后加space
体会
第一次和第二次作业没有考虑清楚,盲目动手,BUG多,而且次次重构。第三次作业用于思考的时间比较多,虽然也出了不少BUG,但是整体思路清晰了很多。
以上是关于OO第一单元总结的主要内容,如果未能解决你的问题,请参考以下文章