面向对象第一单元博客

王翼搏-19373473 2024-03-23 19:22:52

架构设计

借鉴了官方训练给出的代码,在此基础上采用单项式多项式结构

img

实现流程

我的 MainClass, Lexer, Parser 都借鉴了官方训练里给出的样例,下面是简单流程:

  • 1.读入表达式,并进行字符串预处理。
  • 2.进行parseExpr(),在 parseExpr()中调用 parseTerm()解析 Term,在 parseTerm()中调用 parseFactor()方法解析Factor,使用term.addFactor()方法把因子添加到项中,使用 addTerm()方法把项添加到表达式中。
  • 3.重写 toString(),输出。

结构分析

复杂度主要在Monomial.toString() 和 Parser.parseFactor(),这是因为数字、幂函数、exp函数以及自定义函数都算 Factor,在该方法中要判断多种情况。

Bug 分析

嵌套函数的处理忽略了

心得体会

掌握了 ArrayList, HashMap 等常用容器以及一些常用方法的使用,体会到了继承和多态的作用,但是在思想上,以及实现上依然存在困难。

...全文
61 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
wujizeze 老师 2024-04-21
  • 打赏
  • 举报
回复

提醒你后续要注意对照博客作业要求来撰写

301

社区成员

发帖
与我相关
我的任务
社区描述
2023年北航面向对象设计与构造
学习 高校
社区管理员
  • YannaZhang
  • CajZella
  • C_ecelia
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧