作业总结

(1)前言:

本次博客主要是对前几次作业的总结,几次作业难度逐渐增加,完成作业的时间也越来越多。这几次的作业难度系数都是比较大的花费的时间相对于前几次作业来说也是跟多的,并且经常出现错误更是加大了我花费的时间。作业一次比一次久。到网上搜索相关详细资料,到各种视频网站上搜索相关讲解视频,还有通过查书。这几次的作业难度不断爬升,虽然让我们完成作业的难度加大但是能我们更加熟练的掌握题目,对于面向对象的封装性、继承性与多态性也是这些作业让我更加了解这三大特点。第二次作业强调继承性,extends,子类继承父类的东西,方法得以使用这几次作业让我们更深入的了解、学习了类的继承、多态性使用方法以及接口的应用。前面几次作业中有几题是重点字符串的处理(蛟龙号潜艇,还有点线系列以及图形卡片)用Java中的字符串处理类以及正则表达式对输入字符串数据进行合法性校验。既计算察了字符串中的知识,又考察l了实现图形类的继承。而计算电线系列面积的题目难度较大原因是我对知识点的不熟练导致我完成的较为艰辛,同时能通过这些题目又让我进一步的了解这方法的使用,跟加全面的了解这些新学的知识点。第三次作业还考察了接口一开始同样不能熟练掌握。经历了这几 次作业让我从运用各种基础类型到了运用方法,再从方法到类的学习,这几次作业加强了我对编码的思路和写法的理解。

(2)设计与分析:

                  当我们设计一个程序的时候,尽量让代码显得有条理性,类和对象 是oo编程中最优先想到的,在编程的时候先将找到要处理的各个对象然后是个对象的共同的祖先在确定他们之间的继承关系。get和set方法可以通过编译器来获得在我们编写程序的时候可以帮助我们节省大量的时间。多使用对象的组合可以帮助封装的实现。还有就是加深了对几个设计原则的理解。

单一职责原则:单一职责是对某一个类来说的,意思是类只能有一个职责,只负责干一件事情。专心与一件事能够完成的更好,在我看来,单一职责可以提高程序的可读性,可以减少程序的复杂度,减少改变程序时所带来的影响。比如如果一个类可以同时拥有A和B两种职责,当我们需要更改A的功能的时候就可能对B造成影响从而导致B的功能无法正常使用,这样一来在需要修改代码的时候就会很麻烦,而将一个个复杂的问题简单化以后,就可以变得很容易于代码的重用。

开放-封闭原则:软件实体应该扩展开放、修改封闭。对于扩展是开放的 Open for extension。这意味着模块的行为是可以扩展的,当应用的需求改变时,我们可以对模块进行扩展,使其具有满足那些改变的新行为,这样一来当我们需要的时候我可以随便改变其行使的功能。对于更改是封闭的 Closed for modification。对模块行为进行扩展时,不必改动模块的源代码或者二进制代码,模块的二进制可执行版本,无论是可链接的库、DLL或JAVA 的.jar文件,都无需改动。

里氏替换原则:需要在不知道子类的情况下即可调用父类。

还有就是面向对象的三大特性:对于面向对象的封装性、继承性与多态性也是这次作业让我更加了解这三大特点。而更加深入的了解面向对象的封装性、继承性与多态性这三大技术特性我发现对于封装性来说它可以被看作代码和数据的保护伞,这具有很关键的作用,可以保护题目不被轻易的查看访问如果一定要求的话就必须通过其特别设置的方法。在继承关系中,父类一般具有所有子类的共同特性并且可以对父类的方法进行扩展。在多态的机制中,父类通常会被定义为抽象类,在抽象类中给出一个方法的标准,而不给出实现的具体过程,通过继承父类来实现,而比抽象类更方便的是将抽象类定义为接口。

 

(3)采坑心得:

不会正确的使用正则表达式,对于一些字符串处理的方法不熟练,继承中的继承思想不熟练,编写代码的时候经常出现错误。正则表达式是一种可以用于模式匹配和替换的强有力的工具,可以看成是多个字符的组成规则,正则表达式在字符串处理上发挥着很大用,能够帮助我们完成很多事情。然后还有就是,对思路的把握和平常敲代码的严谨性都非常重要,养成良好的思维习惯,清晰每一个步骤的语句,对象以及方法。再出现bug后能够及时的发现是那一步出现了问题。比如说break语句和System.exit(0)语句,这二者有区别的,我记得在一次作业中需要跳出循环后还有一个输出,结果我直接用System.exit(0),导致答案错误,还一直没有发现问题,最后在同学的仔细观察下,发现了问题所在。

 

 

 

(4)改进建议:

在这几次作业中除了点线系列的几次题目其他的题目都还感觉良好,点线系列属实有点麻烦,首先是数学方便,对有哪些条件的判定,用数学来看还好,但是转换成代码来实现就有点麻烦,这里牵扯到太多的计算,而编写代码的时候一个不小心就出现了问题,比如括号这一块,太多的括号套娃同时出现,检查的时候只能一步一步的剥离出来看,还是得在编写的时候仔细点,才能更好的避免后面出现的问题。

//对相应题目的编码改进给出自己的见解,做到可持续改进

(5)总结:

学java编程需要稳扎稳打一步一个脚印,要及时发现自己的错误并改正自己,吸取教训,积累经验。编写代码是一个很严建逻辑性很强的过程,尤其是那些复杂的题目。通过后期的调试来让代码变得更好是不妥的,应该在这之前就先设计好,在稳妥的完成程序编写。

posted @ 2022-05-15 10:55  velum  阅读(72)  评论(0)    收藏  举报