20182308 华罗晗 2019-2020-1 《数据结构与面向对象程序设计》第4周学习总结

教材学习内容总结

初步了解了实例化数据和编写类的一些方法。再一次了解了封装的概念(并结合了第八章的继承的有关内容),通过书上关于UML的内容,编写了第一个UML视图。

了解了在同一个类中的return和this等命令的用法。

参照书本和教程,学习了一些关于TDD调试的思想和方法。

教材学习中的问题和解决过程

问题一:可见性修饰符是什么?它存在的意义是什么?

问题一解决过程:翻阅课本P108的有关内容,并且往后预习学习第八章中有关继承的内容。可见性修饰符的一个典型例子就是protected,这样的修饰符可以使得子类在有限的权限的情况下(也就是不破坏父类封装的情况下)访问父类的构造函数。使得一些类或者方法更方便使用、继承。

问题二:Java中的形参、实参是如何操作的,和C语言中的参数使用方法有什么不一样的地方吗?

问题二解决过程:翻阅课本P132,大体上和原先我们对于C语言中的形参、实参概念理解是一致的。形参本质上是对实参的数据引用,要使得形参的数据传回实参所在的数据的类,就必须要用return,或者方法继承的函数。

代码调试中的问题和解决过程

问题一:在IDEA中,部分代码编辑完毕之后,右键点击,没有Run这个选项。

问题一解决过程:比较了可以run的代码和不能run的代码,并且偶然通过psvm,直接打出了

public class void main(String[] args)

那么在代码文件的右上角就会有一个绿色的小三角形,并且可以run。意识到了问题在于有没有main方法。同时参考了网络资源,意识到了一个类要想正常编译运行,应该要有一个main(主类)。

问题二:在Junit相关的测试当中,即便引入了Junit.jar的包、按教程指导下载安装了插件,Test等指令也还是红的。

问题二解决过程:发现自己找到了一个错误的junit.jar的包,要考虑功能能够正常使用就也必须要考虑junit的版本问题。在导入了正确的包之后,test可能也没有办法马上从红色变为棕色、正常运行功能。这时候就可以重启一下IDEA,问题也许会自己解决。每一次新建一个文件夹,都要执行一次这样的操作。(导入junit.jar)

[代码托管](https://gitee.com/besti1823/20182308IZUMO)

上周考试错题总结

问题一:The behavior of an object is defined by the object‘s__?

A.instance data

B.constructor

C.visibility modifiers

D.methods

E.all of the above

错选:E    正解:D

问题一解决过程:看不懂专有名词的英文,解析就算了吧。翻译大意就是:object的行为由什么来定义?答案是method,也就是这个object中具体的方式。现在看来至少可以排除A,毕竟和形参肯定是没有关系的。

问题二:If a method does not have a return statement, then__?

A.it will produce a syntax error when compiled

B.it must be a void method

C.it can not be called from outside the class that defined the method

D.it must be defined to be a public method

E.it must be an int, double, float or String method

错解:D  正解:B

问题二解决过程:这个我看得懂!问题是问为什么一个方法没有输出值,这和它是不是public没有关系,就像在C语言当中学的那样,void就是没有输出值的类或者方法。

结对及互评

点评过的同学博客和代码

[20182312](https://www.cnblogs.com/shouko/p/11612584.html)

结对照片

结对学习内容

1、如上图所示,本周我与结对对象学习和交流的主要是课本中的代码思想。因为这一次作业难度较大,所以我们两人共同参考了其他优秀同学的代码,并且讲出了每一步代码的意义。并最终交流完成了课本习题。

2、在周五上课之前,我与结对对象互相交流了IDEA的各项设置。因为我在IDEA的git设置上遇到了较大麻烦,因此他重点帮助了我有关git的内容。同时,他在juint插件方面有不理解的地方,我帮他找到了那个正确的junit.jar。

3、在即将完成此博客的时候,回顾了一下上周我与他的博客,并且总结了一些问题,对照学姐第一周给出的模板更改了一番。

上周博客互评情况

[20182312](https://www.cnblogs.com/shouko/p/11569734.html)

其他

1、这是一个任务十分繁重的学习周。周一进行关于熟悉IDEA的系列实验数量很多、程序很繁琐。大部分的时间都拿来设置IDEA了,且IDEA的体系与虚拟机、与CodeBlocks都相去甚远,所以适应起来也花费了许多时间。同样,在IDEA上有不少VIM上没有的组建插件,所以IDEA的功能也比VIM更多一些,在不习惯的情况下出错率也会更高一些。

2、由于在周一实验当天,没有掌握好设置IDEA的节奏,同时因为一步无法正确执行,打乱了全部的节奏。在接下来的几天当中一直处于没有心思去整理IDEA的状态下,也没有时间去预习UML的相关内容,使得实践五没有及时交上。但是在事后慢慢尝试和探索中,仅仅一个下午,困扰我许久的问题(比如无法git、无法编译运行)都迎刃而解了,说明我还是应该吸取当初适应Ubuntu时期积累的经验,要静下心来,掌握节奏,稳中有进地进行学习。

学习进度条

  代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 6000(目标已根据建议修改) 30 400h  
第一周 101/101 2/2 23/23
了解了一些Linux系统操作入门、

学会了基本的JDB调试操作

第二、三周 353/441(删除了一些代码) 3/5 42/67
能够基本记住Java代码编程中的格式代码。

了解了一些有关方法的特殊命令(比如substring)

了解了一些有关类的基本知识。

第四周  327/768 2/7 28/95 基本已经适应IDEA的基本功能

计划学习时间:30h

实际学习时间:28h

改进情况:加强了与结对伙伴的良性沟通,仔细询问代码思路,而不是只看代码本身。

参考资料

1、IDEA简易教程

2、IDEA下使用git

3、积极主动敲代码,使用Junit进行学习

原文地址:https://www.cnblogs.com/77599aa/p/11610476.html

时间: 2024-08-28 21:31:26

20182308 华罗晗 2019-2020-1 《数据结构与面向对象程序设计》第4周学习总结的相关文章

《数据结构与面向对象程序设计》第四周学习总结

20182304 2019-2020-1 <数据结构与面向对象程序设计>第四周学习总结 教材学习内容总结 1.本章我们学习了使用并编写我们自己的类:类中有与类同名的构造方法,也可以有set,get,toSring与自己定义的方法.实例化一个对象,可通过该对象使用类里的所有方法.实例数据是每次创造一个实例后自动生成新的内存空间的变量 2.uml类图 :每个类可能包含三部分内容:类名.属性.操作(方法).UML类图有属于自己的语法,变量的类型名在变量名的后面,它们之间用冒号作为分隔符,方法的+和-

20182306 2019-2020-1 《数据结构与面向对象程序设计》第五学习总结

20182306 2019-2020-1 <数据结构与面向对象程序设计>第五学习总结 教材学习内容总结 尽量简单的总结一下本周学习内容 尽量不要抄书,浪费时间 看懂就过,看不懂,学习有心得的记一下 教材学习中的问题和解决过程 问题1:XXXXXX 问题1解决方案:XXXXXX 问题2:XXXXXX 问题2解决方案:XXXXXX ... 代码调试中的问题和解决过程 问题1:XXXXXX 问题1解决方案:XXXXXX 问题2:XXXXXX 问题2解决方案:XXXXXX ... 代码托管 (stat

20182308 华罗晗 2019-2020-1 《数据结构与面向对象程序设计》实验二报告

课程:<程序设计与数据结构>班级: 1823姓名: 华罗晗学号:20182308实验教师:王志强实验日期:2019年9月16日必修/选修: 必修 1. 实验内容 (1) 编写简单的计算器,完成加减乘除模运算.(2) 要求从键盘输入两个数,使用判定语句选择一种操作,计算结果后输出,然后使用判定和循环语句选择继续计算还是退出.(3) 编写测试代码,测试验证.(https://www.cnblogs.com/rocedu/p/4472842.html) 2. 实验过程及结果 (1)编辑一个符合计算器

20182308 华罗晗 2019-2020-1 《数据结构与面向对象程序设计》 实验四报告

课程:<程序设计与数据结构>班级: 1823姓名: 华罗晗学号:20182308实验教师:王志强实验日期:2019年9月30日必修/选修: 必修 1.实验内容 (一)Java Socket编程 1.学习蓝墨云上教材<Java和Android编程>“第16章 输入/输出 ”和“第22章 网络”,学习JavaSocket编程2.结对编程.结对伙伴A编写客户端SocketClient.java,结对伙伴B编写服务器端.3.截图加学号水印上传蓝墨云,代码push到码云,并撰写实验报告. (

20182308 华罗晗 2019-2020-1 《数据结构与面向对象程序设计》第10周学习总结

20182308 2019-2020-1 <数据结构与面向对象程序设计>第10周学习总结 教材学习内容总结 有关于图的课堂内容: 邻接矩阵.邻接表,图的数组表示法.一个字符串上的数组就可实现数组.需要掌握. 我们简单提到了其他以下几种图:边集数组.无向图邻接表.逆邻接表.十字链表.邻接多重表(比较复杂,老师也没有讲) 图的遍历以及编码实现主要包括以下两大块的内容:前序中序后序的实现:广度优先搜索.深度优先搜索两种搜索方式的实现. 教材学习中的问题和解决过程 问题1:图和树有什么区别?我们说的完

20182322 2019-2020-1 《数据结构与面向对象程序设计》第四周学习总结

教材学习内容总结 1.编写类与方法(构造方法的结构和用途) 2.实际参数与形式参数.public与private.return与void的区别与含义. 3.UML类图的含义与形式 4.静态类(Math类)静态变量.静态方法 5.类间关系(依赖关系.聚合关系.继承关系) 6.接口的使用,能够在某个类中实现接口的方法(Comparable.Iterator) 7.软件活动开发.方法设计.方法重载.测试(黑盒测试.白盒测试) 教材学习中的问题和解决过程 问题1:toString与return返回的值的

20182335 2019-2020-1 《数据结构与面向对象程序设计》第四周学习总结

教材学习内容总结 1.继承的基本语法与用法. 2.利用UML类图表示继承关系. 3.在具体编写类的时候,先是数据声明再是方法声明. 4.toString方法用println或print或字符串连接会自动调用. 5.每创建一个对象.都会为类中声明的变量建立新的内存空间. 6.UML图一些基础使用方法. 7.对象应该是自管理的,既对象的实例数据应该仅由该对象来修改,这就构成了封装. 代码调试中的问题和解决过程 问题1:测试代码出现错误 问题1解决方案:junit的方法名必须是textxxx或xxxt

20182308 2019-2020-1 《数据结构与面向对象程序设计》实验六报告

学号 2019-2020-1 <数据结构与面向对象程序设计>实验六报告 课程:<程序设计与数据结构> 班级: 1823 姓名: 华罗晗 学号:20182308 实验教师:王志强 实验日期:2019年10月21日 必修/选修: 必修 1.实验内容 1.链表练习,要求实现下列功能: 通过键盘输入一些整数,建立一个链表: 这些数是你学号中依次取出的两位数. 再加上今天的时间. 例如你的学号是 20172301 今天时间是 2018/10/1, 16:23:49秒 数字就是 20, 17,

20182327 2019-2020-1 《数据结构与面向对象程序设计》实验二报告

20182327 2019-2020-1 <数据结构与面向对象程序设计>实验二报告 课程:<程序设计与数据结构> 班级: 1823 姓名:赵天昊 学号:20182327 实验教师:王志强 实验日期:2019年9月16日 必修/选修: 必修 1.实验内容 (1) 编写简单的计算器,完成加减乘除模运算. (2) 要求从键盘输入两个数,使用判定语句选择一种操作,计算结果后输出,然后使用判定和循环语句选择继续计算还是退出. (3) 编写测试代码,测试验证. 2. 实验过程及结果 不多说,上