1.作业过程总结:这三次的作业难度来说比前三次作业要大,比如第四次作业的第一题,要用到正则表达式,而这些都是需要自己课后去学习了解,还有题目也长,数据格式也复杂,所以就没有做出来,第二题的因为给出了主函数的源代码,所以写起来会比较轻松,
但后面判断是否在圆内的函数方法需要些时间,总体来说,这道题需要一个多小时。第三题考察到的课内知识点较多,要使用private关键字,和需要用 extends继承主类的属性和方法,总体来说内容和前几次作业的内容相差不大,难度也不大,还要注意数据的保留小数位和数据的输入格式,不然很容易格式错误,这道题花费的时间相对较少。第二次作业考察的知识点比较全面,抽象类和多态继承和列表都需要用上,还要用上add sort 和多态性接口来才能行,对于刚学的小白,综合性大。难度要稍微大一些,花费的时间相对更长,要4-5个小时来解决,如果不求助询问同学,可能要花的时间会更长。紧接着第二题又是关于正则表达式的题目,难度也大,也要花比较多的时间,个人觉的对于编程要花很多的耐心和精力,比较耗费时间,平时要花挺多的时间。最后是第三次作业的第一题也是主要考察继承,列表,还有类与类之间的关联,类与类的各种发放调用,关联得还是非常密切,同时也比较复杂。不过有了类图也能比较好理解了
类与类之间联系紧密且复杂,首先Circle Rectangle等各个类都继承自抽象类shape,然后Card类保存了shape类属性,创建类实例后,可以通过调用shape来调用各个子类的属性和方法,这样可以节省比较多的资源和空间,其次Card要继承接口,为后面的排序做好准备,然后创建一个DealCardList类,将数据的输入全都放进去,存入链表中,然后一个个进行操作。整个过程还是比较复杂,对于我来说。第二题与第一题的过程相似,只需注意输出形式即可。第三题就是考察算法的优化设计,一般都是去网上查阅资料,参考相关算法,汲取核心的部分进行测试。
设计心得:主要是利用好类图,先通过类图依次找到类与类之间关系,通过类与类的属性和方法来进行调用。封装是用来保护隐私,能有效地减少bug的出现,接口能高效率地帮我们实现一些算法,方法,提高程序的效率。抽象类可以减少代码的浪费,节约空间资源。
类设计心得:测试能较早地发现还没有被发现的缺陷,有效提高代码的质量,能尽可能地找到更多的错误,是程序更不容易出现bug,对程序的运行,结果有很大的影响。所以写完程序后都要养成一个测试的习惯。使用Junit进行程序的测试是可行的,它简洁且花费的时间少,检查结果会及时反馈,运行良好就表示绿色,出错就表示红色,十分简单易懂。
课程收获:通过这几周的课程,我大概了解的对象的封装的意义,和多态类接口抽象类的使用方法,和能理解它的意义,同时对列表的用法又更上升了一个高度,另外正则表达式也让我更加明白了数据格式校验正确的重要性。
对课程的建议:可以降低一些难度,列表和正则表达式比较复杂。讲课可以再多讲一些正则表达式和列表类型的题目,也可以把之前的作业都拿出来讲一讲。
浙公网安备 33010602011771号