学号 20162327 《程序设计与数据结构》第5周学习总结

教材学习内容总结

  • 1.java是一种面向对象的语言。面向对象是一种编程方法。更是一种思维方式。
  • 2.面向对象编程的终极目标是消除重复代码。
  • 3.创建类的方法:class + 类名{属性(成员变量);方法(成员方法)}
  • 4.两种内存
    栈内存:存放着对象的名字,称为“引用”。
    堆内存:存放着对象的本体。
  • 5.使用对象调用变量和函数
    对象.成员变量
    对象.成员函数
    生成一个对象必须用“new”
  • 6.构造函数
  • 7.访问方法:getX
    设置方法:setX
  • 8.方法声明头部包含返回值类型、方法名和方法列表的参数列表
    方法头部指定的返回值类型可以是一个基本类型、类名或者是保留字void
  • 9.this的用法
    1.使用this调用成员变量和成员函数,this是代表调用那个函数的对象。
    2.使用this调用构造函数。
  • 10.形式参数和实际参数的区别和联系。
  • 11.static 关键字
    1.定义静态成员变量(可以直接用类名来调用,也可以用对象名来调用)
    2.定义静态函数(也可以直接用类名来调用,不能使用this)
    3.注意:一个静态变量属于一个类,静态函数中不能引用非静态的成变量。
  • 12.程序的测试和程序的调试的相关内容。其中调试尤为重要。

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

  • 问题1:程序5.11有关求最大公约数的问题。
  • 问题1解决方案:
   private void reduce(){if(numerator != 0){int common = gcd(Math.abs(numerator),denominator);numerator = numerator / common;denominator = denominator / common;}}private int gcd(int num1,int num2){while(num1 != num2)if (num1 > num2)num1 = num1 - num2;elsenum2 = num2 - num1;return num1;}

其中gcd是用来求最大公约数的一个函数,其原理是使用了数学中的辗转相减法。

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

  • 问题1:调用不同类或同类中方法的格式。
  • 问题1解决方案:一般是1、对象.成员变量2、对象.成员函数
访问包的位置 private protected public
本类 可见 可见 可见
同包其他类或子类 不可见 可见 可见
其他包的类或子类 不可见 不可见 可见

代码托管

代码量截图

代码提交过程

上周考试错题总结

  • 1.(下面哪条语句访问了一个整型二维数组numbers的第二个元素,并把值存入num变量中)答案:B
    A .num = numbers[1][2];

    B .num = numbers[0][1];

    C .num = numbers.getElement(1, 2);

    D .num = numbers.getElement(0, 1);

    E .none of the above are correct.
    解析:[0][0]是第一个元素,[1][2]访问的是第三个元素。

  • 2.(对于下面的代码段,说法正确的是?)答案:E

       int[] array = new int[25];array[25] = 2;

    A .The integer value 2 will be assigned to the last index in the array.(整数2会赋给数组中最后一个元素)

    B .The integer value 25 will be assigned to the second index in the array.(整数25会赋给数组中的第2个索引)

    C .The integer value 25 will be assigned to the third value in the array. (整数25会赋给数组中的第3个元素)

    D .This code will result in a compile-time error.(代码会产生编译时错误)
    E .This code will result in a run-time error. (代码会产生运行时错误)

  • 3.(无限循环不会产生编译时错误)答案:A

    A .true
    B .false

  • 4.(在Java中,布尔表达式中最多有两个逻辑运算符)答案:B
    A .false
    B .true
  • 5.已知某用户stud1,其用户目录为/home/stud1。如果当前目录为/home,使用一下哪个命令后可以进入/home/stud1/test? 答案:B
    A .cd home
    B .cd stud1/test
    C .cd /stud1/test
    D .cd test
    注意:cd 和 第一个文件名之间没有“/”

结对及互评

点评过的同学博客和代码

  • 本周结对学习情况

    • 结对同学学号20162327
    • 结对学习内容
      本周我和我的小伙伴继续研究了分数的计算问题,原来我们考虑的是用switch语句对加减乘除运算进行分块,不过,学了第五章后,我们学会了使用调用方法。就是当一个问题比较复杂时,我们可以可以分解为几个私有的支撑方法,来去调用它。参考书上的程序5.11,我们掌握了求分子分母最大公约数的方法--辗转相减法,还有两个分数相除就等于乘以它的倒数这些小技巧,虽然现在看起来这些都很容易想到,但是要与编程结合起来还是有难度的。总之,我们俩配合默契,在学习中做到了互帮互助,共同提高,感觉很棒!
  • 上周博客互评情况
    • 学号1
    • 学号2
    • 学号3

其他(感悟、思考等,可选)

这周学习的第五章的内容,具有非常强的逻辑性,非常考验我们的思维能力,有时候一段内容要看好长时间甚至看其他的参考书才能理解,并且这种逻辑很容易遗忘,必须每天都看一看,增强理解,看的次数多了,时间长了,逻辑也就会慢慢地变清楚了。虽然我现在还不熟很清楚,但是已经比刚开始看好多了。还有,自己动手编写一些程序也是帮助很大的,这样你就有了自己的思维方式,有了自己独特的理解,为以后的学习锻炼一个好的思维方式。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 100/100 1/1 16/16
第二周 257/257 1/1 22/22
第三周 465/465 1/1 26/26
第四周 875/875 2/2 40/40
第五周 600/600 1/1 40/40

参考:软件工程软件的估计为什么这么难,软件工程 估计方法

参考资料

  • 《Java程序设计与数据结构教程(第二版)》

  • 《Java程序设计与数据结构教程(第二版)》学习指导

转载于:https://www.cnblogs.com/20162327WJH/p/6659499.html

20162327WJH第五周作业相关推荐

  1. PHP第五周答案,算法设计与分析第五周作业——Word Ladder

    算法设计与分析第五周作业--Word Ladder 上周找了一道深度搜索优先搜索的算法题来做,于是这周就选了一道广度优先搜索算法题来试试手. 本周所选题目:原题目链接 题目详情 题目大意:给出一个字符 ...

  2. Linux创建名为vgtest的分区,第五周作业,

    第五周作业, 1.磁盘lvm管理,完成下面要求,并写出详细过程: 1)创建一个至少有两个PV组成的大小为20G的名为testvg的VG;要求PE大小 为16MB, 而后在卷组中创建大小为5G的逻辑卷t ...

  3. Python第五周作业

    Python第五周作业 1. 一元二次方程求根 2. 百钱买百鸡 3. 鸡兔同笼 4. 最大公约数和最小公倍数 5. 判断三角形并计算面积 6. 判断IP地址合法性 7. 回文素数 8. 反素数 9. ...

  4. 学号20189220 2018-2019-2 《密码与安全新技术专题》第五周作业

    学号20189220 2018-2019-2 <密码与安全新技术专题>第五周作业 课程:<密码与安全新技术专题> 班级: 1892 姓名: 余超 学号:20189220 上课教 ...

  5. 2019 第五周作业

    2019春季第五周作业 这个作业属于哪个课程 C语言程序设计ll 这个作业要求在哪里 (https://edu.cnblogs.com/campus/zswxy/software-engineerin ...

  6. 陈斌老师《数据结构与算法Python版》第五周作业——ASCII谢尔宾斯基地毯

    陈斌老师<数据结构与算法Python版>第五周作业--ASCII谢尔宾斯基地毯 题目 思路 程序如下 总结 题目 谢尔宾斯基地毯是形如上图的正方形分形图案,每个地毯可分为等大小的9份,其中 ...

  7. 20169210 2016-2017-2《网络攻防实践》第五周作业

    教材学习内容总结 Web应用程序安全攻防 1. SQL注入攻击步骤: 1 发现SQL注入点 2 判断后台数据库类型 3 后台数据库中管理员用户口令字猜解 4 上传ASP后门,得到默认账户权限 5 本地 ...

  8. 网络攻防-20169213-刘晶-第五周作业

    教材学习内容总结 传统C/S架构的计算B/S架构 "瘦"客户端:Browser (Web客户端) "厚"服务器:Web服务器.Web应用程序.数据库- 通讯机制 ...

  9. 2019春第五周作业

    这个作业属于哪个课程 C语言程序设计 这个作业的要求在哪里 (https://edu.cnblogs.com/campus/zswxy/software-engineering-class2-2018 ...

  10. 令人绝望的第五周作业

    预习作业 1,统计一行文本的单词个数 本题目要求编写程序统计一行字符中单词的个数.所谓"单词"是指连续不含空格的字符串,各单词之间用空格分隔,空格数可以是多个. 输入格式: 输入给 ...

最新文章

  1. javascript的typeof返回哪些数据类型
  2. spring 整合websoket(整理)
  3. MySQL引擎之MyISAM,InnoDB,Btree与B+tree
  4. [渝粤教育] 西南科技大学 现代企业管理 在线考试复习资料
  5. dojo 九 effects dojo/_base/fx 和 dojo/fx
  6. 如何将电子海图的航线导到gps上_电子海图(ECDIS)使用总结
  7. 社交网站 分享 +button
  8. C++动态内存会被自动释放吗?
  9. @cacheable 设置过期时间_Redis 的过期策略是如何实现的?
  10. linux 安装fortran lapack 库
  11. Grad-CAM绘画热力图 使用教程 pycharm+anaconda 论文画图 卷积神经网络CNN Resnet
  12. hp笔记本如何看序列号
  13. ps4插html屏幕不亮光,ps4连接显示器怎么老是黑屏
  14. 场景图生成论文阅读笔记 之 PCPL
  15. C++数据采集软件和数据显示软件(TCP通信)
  16. Gazebo物理仿真环境搭建 实例
  17. HDU 1873 优先队列
  18. [英语竞赛] 知识整理
  19. 快速了解矢量量化Vector-Quantized(VQ)及相应代码
  20. 京东618叠蛋糕脚本,亲测好用

热门文章

  1. 2022-7 一套鼠标键盘控制两台及以上电脑
  2. Chapter 7. 结构体、枚举
  3. 数据结构 —— 队列
  4. 计算机q的n次方怎么表示什么,次幂
  5. 【电力电子】【2012.07】基于功率因数校正的三相整流器设计与仿真
  6. 2020云服务平台领域最具商业合作价值企业盘点
  7. 陈强教授《机器学习及R应用》课程 第四章作业
  8. 中国计算机软件行业分析4---外企的商业贿赂
  9. 一个人成熟的5大标志
  10. 十大精选开源软件推荐:编程化繁为简