0、前言:

java第一阶段的学习已经过去了,这里针对第一阶段的三次作业进行总结

1、作业过程总结:

(1)总结三次作业之间的知识迭代关系

①第一次的作业相当基础,只有最主要的main函数,其余的内容全部通过简单的代码进行实现,没有很多的涉及到java的知识点和技巧,只是让我们对与这门语言有一个了解和认知,帮助我们从C语言过渡过来。

②第二次的作业不同于第一次,在第一次作业的基础上,开始要求我们使用多个函数,提升了题目的难度,同时也可以帮助我们熟悉方法之间的调用关系,通过作业实践,自我学习方法的较为基础的使用,而且题目强制性的规定了各种方法的作用,可以帮助我们进一步学习自己写代码时要如何规划。

同时,各个题目之间其实可以相互使用类似的方法,提醒我们注意方法作用的单一性,方便自我的后期使用

③第三次的作业,已经不再追求简单的方法使用,而是开始让我们使用类,通过自己定义的类来实现自己想要实现的功能,同时各个类中包含相对应的作用的方法,这个时候开始java语言的一种特色就体现出来了,每个类都有自己可以实现的功能,可以相互调用,同时我们也可以从中学习类之间的使用方法

(2)通过作业逐步从面向过程过渡到面向对象

最初的第一次作业,其实类似于面向过程,我们注重它需要的结果,通过结果直接推理出中间的过程,但是,在第二次作业,特别是第三次作业的时候,我们开始逐渐重视起我们自己设计的类的功能是什么,该怎么去设计他才可以配合我们自己的思路流程,开始关注我们类这个对象的核心内容,这就要已经完成了相印的过渡。

(3)作业中遇到的问题以及解决方法

第一次的作业中,最关注的问题便是如何输入我们所需要的数字或者是字符,因为最初接触java语言,我们并不知道java控制台输入是怎么操作的

于是开始去搜索相关的知识,发现最常用也是相当好用的就是Scanner,然后学习相关的代码,解决了这个困难

第二次的作业使用了方法,但是方法怎么使用,我该如何调用这个方法便成了一个很大的问题,我自己写了一个名叫IsLeapYear(int year)的方法,但是我直接使用的时候java软件给我进行了报错,然后经过了网上搜索,我知道只有先定义初始化这个类,才能进行方法之间的调用

第三次作业最大的困扰其实已经脱离了语法,而是自己设计的方法存在很多的漏洞,例如最大值,最小值,是否报错,都是需要考量的事情,在花费了大量时间查错之后才改正过来,但是这也是自己设计存在很多的偏差,动手实践过快了,少了中间思考的时间,所以代码漏洞百出

(4)每次作业花费的时间比例

第一次的作业一共花了一个半小时

第二次的作业花了六个小时

第三次的作业花了两天时间

(5)对编程过程的严谨性的认识和教训

编程中需要思考的地方很多,不只是简单的完成作业中给出的表面答案,很多角落里的差错,都会成为题目报错的机会,不是一把题目拿到手中,直接为了求解所谓的答案,而是需要自己分析,拆解,才能保证错误的出现尽可能的少。第三次作业中有一次下n天的最大值报错问题,就是我在思考的时间花费太少,根本没有考虑到题目会给我超过int类型的测试点

2、设计心得

(1)面向过程与面向对象的比较

①面向过程主要是代码设计的时候为目标而设计过程的一种思想,需要关注你什么要发生,什么时候解决,怎么做

②面向对象则是关注你在代码运行时,是谁在受到影响,以你这个目标对象该做什么,怎么做为中心

(2)面向对象设计的基本原则

要尽可能降低你这个类(对象)对于其他类(对象)的影响,保证一种对象实现一种目的,不穿插,关注各个类的协调,而不是一股脑的把目的全部堆放在一起,显得杂乱不堪。

(3)编程思维的理解

要明确你的目的是什么,有什么实现了你的目的,每个物品之间的关系是什么,每个物品需要做什么,分工明确,互不干扰但是又可以相互进行。

3、测试的理解与实践

(1)测试对于编码质量的重要性

一个代码是否实用,不会因为一些输入错误而造成代码崩溃,我们都需要通过测试来得到答案,通过测试我们可以知道代码是否足够“饱满”,对于各种错误的抵抗力强不强,得到的答案可信度高不高,而测试就可以直观的把代码的“丰满度”表达出来,对于我们java编程来说是必不可少的一环。

(2)假如让你测试样例,你会怎么做

①首先我会先从代码最基本的要求入手——你的代码答案可信度高不高

先宽泛的选取样例,自己手动演算得出预期答案,随后通过代码的运行,比对实际答案与预期答案的差别,来查找漏洞。

随后,挑区一些特殊样例,例如闰年二月份第29天或者最大值最小值之类的样例,这些避开常规的运算,需要做特殊处理的样例挑选出来,通过代码演算,比对实际答案与预期答案之间的差别

②其次,我会关注一些错误的东西

例如,错误样例的输入,比如int类型的输入要求,而你使用了字符,代码是否会提醒你输入错误,还是直接给出错误答案,亦或是代码报错无法运行

4、课堂收获

首先是渐渐弄明白了面向对象和面向过程的区别,现在的思维也逐步向面向对象转变,不再是为了完成某项功能而写代码,面对题目也有了更多思考和认识。其次是学到了很多JAVA编程的基础知识,能为将来的更深层次学习打下基础。

通过这几周的学习,对于面向对象编写程序的学习有了更深的了解,相比较面对过程,了解了面对对象的优点,这对于Java下一阶段的学习打下了很好的基础。

而对于上学年的c语言学习来看,我感觉java有很多更方便的地方,我们可以自己通过简单的操作,来调用以前写过的类,来辅助自己完成目标,而不同于C语言复杂的操作过程

5、对于课程的建议

希望老师在上课的时候,可以结合一些例子,达到边学便用的效果,例如这次的“狼羊白菜”,很大的激发的同学们的思考热情,而且课堂气氛也有很大的提升!

6、对于之后一段时间的学习计划

我希望自己可以更多的关注一些知识方面的内容,学习课外的东西,很多技巧都需要自己的不断地补充的,课堂讲解的东西毕竟有限,例如正则的使用,这对我们未来的工作是很有帮助的,所以我会尽力去汲取对自己有用的知识,完善自己的java知识!

java实训报告前言_Java学习第一阶段总结相关推荐

  1. java实训报告结论_Java实验报告(二)及总结

    实验二 Java简单类与对象 一. 实验目的 (1) 掌握类的定义,熟悉属性.构造函数.方法的作用,掌握用类作为类型声明变量和方法返回值: (2) 理解类和对象的区别,掌握构造函数的使用,熟悉通过对象 ...

  2. java实训报告怎么写_Java实训报告

    很多同学在大学里面参加完Java实训之后,学校的老师会要求每个人写一份Java实训报告,对于学习理科计算机专业的你来说,写几万行的代码可能不是什么问题,但是让写一份800字的实训报告,那就有些头大了, ...

  3. java小游戏实训报告心得_Java实训报告-扫雷.doc

    Java实训报告-扫雷 实训报告书 实训名称: JAVA程序设计实训 系 (部): 信息工程系 专业班级: 计算机科学与技术08-1 学生姓名: 学 号: 指导教师: 完成日期: 山东科技大学泰山科技 ...

  4. 大专java实训报告_java实训报告

    <java实训报告>由会员分享,可在线阅读,更多相关<java实训报告(13页珍藏版)>请在人人文库网上搜索. 1.北京联合大学管理学院实 训 报 告专业 信息管理与信息系统班 ...

  5. android订餐系统实训总结,订餐系统的java实训报告.ppt

    订餐系统的java实训报告.ppt MingD互联网订餐电子商务系统 PPT模板下载 1需求分析2建立数据库3编码4页面设计5测试及调试 项目开发过程 小组分工 数据库部分我们采用Javabean对象 ...

  6. 大一java实训报告1500字_2019年大学生java实训总结报告

    大学生 java 实训总结报告 大学生 java 实训总结报告是我们在接受了 JAVA 技术专项培训 后书写的总结报告,这是对自己收获的总结 ! 以下是整理的大学生 java 实训总结报告,欢迎大家参 ...

  7. ssm实训报告心得_Java开发学习心得(一):SSM环境搭建

    Java开发学习心得(一):SSM环境搭建 有一点.NET的开发基础,在学校学过基础语法,对JAVA有点兴趣,就简单学习了一下,记录一下从哪些方面入手的,暂时不打算深入到原理方面,先简单搭下环境看看, ...

  8. 大一java实训报告1500字_JAVA实训报告

    展开全部 1. 实训的题目及e69da5e6ba903231313335323631343130323136353331333238636637简介: 题目:java计算器应用程序 简介:通过本程序可 ...

  9. 计算机java实训报告,计算机Java实训报告.doc

    实 训 报 告 课程名称: 山寨版QQ 院 (系): 信息科学与工程学院 专业班级: 计算机网络专业08级2班 课程组长: 王二龙 课程成员: 展召振,于明阔 指导教师: 张晓诺 目 录 1.课程设计 ...

最新文章

  1. uart协议_UART协议简介
  2. multi-target not supporte
  3. 7-1 银行业务队列简单模拟 (25 分)
  4. 【跃迁之路】【497天】程序员高效学习方法论探索系列(实验阶段254-2018.06.17)...
  5. 基类的析构函数不能被继承。_为什么要把C++类中的析构函数声明为虚函数?
  6. hadoop简单介绍_Hadoop:简单介绍
  7. nginx 端口转发
  8. leetcode —— 面试题29. 顺时针打印矩阵
  9. phalapi做登录检测_phalApi
  10. 冯仕堃:预训练模型哪家强?百度知识增强大模型探索实践!
  11. maven -maven.test.skip skipTests
  12. 第4章 更新Erlang.mk
  13. 关于DynamipsGUI
  14. 西瓜书(机器学习周志华)公式详细推导
  15. VSCode 之 设置 settings.json 配置文件
  16. 六爻金钱卦 手工摇卦方法
  17. 中文版IE7for XP SP2下载地址
  18. 虚拟数字人营销时代来临,虚拟主播与真人主持直播间同台互动
  19. 哪款分体式蓝牙耳机最好用?分体式蓝牙耳机推荐!
  20. Interpolator插值器

热门文章

  1. PMP备考图表汇总详解
  2. 基于人体感应模块的驱鸟器设计
  3. 编辑PDF文档内容有哪些方法
  4. 判断深度学习的效果好坏loss和val_loss比较
  5. python记录程序运行时间的三种方法
  6. 新手入门:圆角使用方法详解,圆角形成原理以及各个值的意义
  7. 东南大学2012年招收推荐免试生直接攻读博士学位研究生简章
  8. 微型计算机原理及应设计试卷,微型计算机原理及应用试卷2002年10月
  9. CobaltStrike 生成office宏病毒进行钓鱼攻击
  10. java中调用谷歌的无界浏览器对页面元素进行截图