Java初学前三次作业总结

主要说明本次博客针对的作业情况:
1.作业过程总结
①总结三次作业之间的知识迭代关系:

  单次作业里的问题难度逐步递增,三次作业次与次的作业间难度都有一个大的跨越。

  第一次作业难度最小,有过之前学习C语言的基础,并不算很难,在技术范围之内,但其中有些小错误没找出来,思考范围还不够全面。

  第二次作业难度开始上升,开始两个类的操作,应该算是面向对象的正式开始。具体过程和之前学的差不多,但是语句更加严谨,所考虑的东西也更加多了起来。除了一些小问题,大致还能接受。

   第三次作业是这几次作业最难的一次,我感觉以我的水平还够不到。前两题还好,但是后两题真的好难。真的花费了好长一段时间才解决一些基本问题,直到提交也未能解决全部问题。

②如何通过作业逐步从面向过程过渡到面向对象:

  第一次作业只是让我们了解一下最简单的一些基础知识。如数据类型与数据转换,还有属性定义等。代码都在main函数里操作,难度不大,初步了解运用一些基础面向对象知识,但主要还是面向过程。

  第二次作业开始正式从面向过程发展到面向对象,开始对另一个类进行操作并应用。难度不大,具体操作和在main函数里操作大致一样。新创建的一个类具体没什么太大作用,但可以让我们初步形成面向对象的意识;

  第三次作业的3.,4题我感觉把面向对象发挥到了我所能认知到的极致。看到题目的那一瞬间才知道居然还可以这样“玩”!创造多个类,彼此依赖,形成联系紧密的关系。这种面向对象思想也就是分而化之,逐一解之。
③作业过程中遇到的问题及解决方法

  1. pta的格式规定严格,输出方式要求严格一致,且开头规定要用Main;
  2. 在面向对象过程中,不知道如何调用及类里面的数据为零问题。调用的那个类声明要用public,类里面的数据可以直接用main里面的,这就有无参构造及有参构造两种; 
  3. Java初学前三次作业总结_第1张图片   
  4. 数组的调用问题,调用时直接使用数组的名称即可;解决方法如图:

 

 Java初学前三次作业总结_第2张图片

  4.String返回值问题,string类型赋值的时候一定要“”,再返回;也可以直接返回return   ”xxxxxx”;解决方法如图:

 

 

  5.类的使用问题,刚开始不知道DateUtil date是什么,经过询问才知道解决方案;解决方法如图:

 

  6.类的返回值问题,public DateUtil getPreviousNDays(int n)不知道如何返回其值;解决方法如图:

 

 


④每次作业花费的时间比例

第一次作业:第二次作业:第三次作业=1:3:8
⑤对编程过程的严谨性的认识及教训

  Java的面向对象过程是很严谨的,每一步都紧密相关。我有时候在写程序的时候由于没有考虑到面向对象的严谨性,导致出现了很多错误而又不知道如何去修改;因此,在面向对象过程中,一定要有严谨性;
2.OO设计心得
①面向过程与面向对象的比较

  面向过程是对具体操作进行思考,一步一步走到终点;它更加注重解决方法。

  面向对象是一种大局观,先思考清楚格局,再对格局逐一规划。相当于大鱼吃小鱼,小鱼吃虾米一样的操作方式;

②面向对象设计的基本原则理解

       暂时我所了解和接触的是单一工作原则及依赖倒置原则;

  依赖倒置原则简单来说就是:调用者为高层,被调用者为低层

  单一工作原则:一个类只能负责一个工作。
③OO编程思维的理解

       就目前我的理解是:main只包括类的调用,所有的工作都在类中进行,且一个类只能负责一个工作。这样以后就很可以方便改动和升级;同时也可以更加简便地修改错误,不会影响大局,也不需要到处改动;
3.测试的理解与实践
①测试对于编码质量的重要性

      测试可以检查出当初写代码时许多不曾考虑到的问题或者遗漏的问题。可以更好地优化程序,减少bug,让使用感觉更加方便愉悦;
②假如让你设计测试用例,你会如何做

  1. 明确原始需求,根据需求设计测试方案;
  2. 应用面向对象的思想,将想好的设计方案按功能分类;
  3. 一个一个类地开始面向编程。

4.课程收获

总结四周来在OO方面的教训及收获

        这几次作业刚开始还好,没花太多功夫,思路也没有什么问题,就是一些小问题。越到后面,简直难的不成样子了。一方面是由于我本身没学好,基础也不大行,导致内次写作业都花了很长一段时间。后面是完全连思路都理不大清,几天都写不出一个题目,后来写完会的之后就直接基本放弃。另一方面是感觉作业真的太难了。

虽然每天都在写代码的痛苦里煎熬,但收获也是丰富的。学会了很多知识,补充了很多盲点。同时在坚持不懈地努力。后来哪怕知道不会写,就算放弃,也会去不停地看一看。通过这几次作业,我对面向对象有了初步的了解,管中窥豹,发现了面向对象的巨大作用;
5.对课程的建议
       老师上课讲的感觉跟每次作业的关系都没有很大的紧密关系,一个比较笼统的观念,一些具体操作也并不一定在作业上可以应用。另外,我觉得作业有些难度了,老师可以讲一讲作业。讲一下里面的思想,以及一些问题的多种解决方式。以及一些非常漂亮、别出心裁的解决办法与分类。可以让我们的思想更加开阔,而不紧紧只限于老师上课所讲的单一方法。相信这样我们的水平会更加出色。

你可能感兴趣的:(Java初学前三次作业总结)