20172325 2017-2018-2 《Java程序设计》第十周学习总结
20172325 2017-2018-2 《Java程序设计》第十周学习总结
教材学习内容总结
1.集合与数据结构
- 集合是一种对象
- 集合按照保存类型来看可以分为两种:
(1)同构集合:只能保存类型全部相同的对象;
(2)异构集合:可以保存各种类型的对象。
2.分离接口与实现
- 集合可以用各种方式实现
- ADT:是由数据和在该数据上所实施的具体操作构成的集合,一个ADT有名称、值域和一组允许执行的操作。
- 集合和抽象数据类型可以互换的等同概念。
3.数据结构的动态表示
- ArrayList类解决可变大小数组问题的方法是创建一个更大的数组并将原有的数据复制到新数组里,但这种方法未必是最高效的。
- 一个动态数据结构用链来实现。利用对象引用作为连接对象间的链。
- 动态数据结构的大小规模需要增长和收缩。
4.线性数据结构
1、队列:类似于列表,但是在存取方式上有所不同,是一种先进先出方式管理数据的线形数据结构;
2、堆栈:也类似于列表和队列,但是是一种以后进先出方式管理数据的线形数据结构;
5.非线性结构
1、树:是一种以层次结构组织数据的非线性数据结构;
2、图:是非线性数据结构,使用常见的边来连接节点;
6.Java集合类API。
- Java标准类库中定义了几种表示不同类型集合的类,常称为Java集合类API。
- 泛型:一个集合所管理的对象的类型要在实例化该集合对象时才确定。
- 集合所能存放的对象与继承关系有关。

教材学习中的问题和解决过程
- 问题1:对于集合和数组关系理解得不是很清楚
问题1解决方案:
数组特点:大小固定,只能存储相同数据类型的数据
集合特点:大小可动态扩展,可以存储各种类型的数据
虽然存在不同,但是二者之间可以实现转换
- 问题2:紧接着问题一,既然集合可动态扩展,但是课本上说道她不是一种高效的实现数据结构动态表示的方法,也就是说不能用集合实现,这又是因为什么呢?
问题2解决方案:参考下列博客

就是说,按照链来实现的话就能够达到动态的实践,根据需要增长和收缩,而集合时通过在静态时的声明来达到的,每次改变的储存空间相同,没有体现出动态这个概念。
代码调试中的问题和解决过程
本周代码与之前的内容有相似,没有遇到太大问题。
代码托管

上周考试错题总结
- 错题1:

- 解析:调用堆栈跟踪提供了存储在运行时堆栈上的方法的名称。方法名称从堆栈中删除以相反的顺序放置,也就是说,最早的方法是先放在这里,下一个方法其次,等等,所以最近调用的方法是在堆栈上最后一项,这是第一个删除。然后堆栈跟踪显示所有的活动方法,它们被称为(最近的第一次)。
- 错题2:

- 解析:数据流表示特定的源或目标流,用于输入或输出。处理流就像一个数据流,其中添加了一些额外的进程(is),添加到输入或输出中。例如,一个处理字节流可以从一个文件中输入所有的项目,并删除任何不是数字的ASCII字符,这样输入的数字将不会抛出NumberFormatException。
- 错题3:

- 解析:Java程序的输入很困难,因为它需要大量的开销。扫描器类实现了所有的开销,这样程序员就不必看到它了。因此,扫描器是执行输入操作的抽象,而不需要细节。这些细节包括导入java.IO类,以某种方式处理IOexception,从标准输入流中输入,将输入划分为单个令牌,并根据需要将每个令牌转换为请求形式。
- 错题4:

- 解析:异常传播意味着一个异常被匹配的catch子句在当前try块级别,如果没有匹配,然后在下一个封闭try块级别,等等,直到异常已经被匹配的条款或异常的主程序和被Java虚拟机。
结对及互评
- 博客中值得学习的或问题:
- 排版有进步
- 问题跟踪详细解答清晰
基于评分标准,我给本博客打分:9分。
点评过的同学博客和代码
- 本周结对学习情况
- 20172306
- 结对学习内容
我们一起学习了第十三章的内容。
继续了四则运算的项目,将项目完善。
进行了蓝墨云的实验。- 上周博客互评情况(只要链接,具体点评放相应博客下)
其他(感悟、思考等,可选)
课本的第一遍学习已经完成,但是由于进度等问题,对于很对知识的理解和运用都不是很清楚,所以还需要回头去重新查缺补漏,希望能够在复习中发现问题解决问题,提高自己对java的掌握力度。
学习进度条
| 代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
|---|---|---|---|---|
| 目标 | 5000行 | 30篇 | 400小时 | |
| 第一周 | 129/129 | 1/1 | 20/20 | |
| 第二周 | 359/488 | 1/2 | 18/38 | |
| 第三周 | 521/1009 | 2/4 | 22/60 | |
| 第四周 | 1057/2066 | 1/5 | 30/90 | |
| 第五周 | 636/2702 | 1/6 | 30/120 | |
| 第六周 | 489/3191 | 1/7 | 28/158 | |
| 第七周 | 831/4022 | 1/8 | 41/199 | |
| 第八周 | 382/4404 | 3/11 | 16/215 | |
| 第九周 | 1301/5705 | 2/13 | 28/243 | |
| 第十周 | 982/6687 | 1/14 | 25/268 |
参考资料
20172325 2017-2018-2 《Java程序设计》第十周学习总结的更多相关文章
- 201521123027 <java程序设计>第十周学习总结
1.本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常与多线程相关内容. 异常: 多线程: 2.书面作业 Q1.finally 题目4-2 1.1 截图你的提交结果(出现学号) 1.2 ...
- Java程序设计第十周学习总结
Java课程知识梳理: 流的区分; 字符流与字节流的区别: 字节流是直接操作文件本身的,如果没有关闭字节流操作,文件会依然输出内容 而字符流在程序运行之后会发现文件没有任何的内容,这是因为字符流操作的 ...
- 20172325 2018-2019-2 《Java程序设计》第九周学习总结
20172325 2018-2019-2 <Java程序设计>第九周学习总结 教材学习内容总结 图的定义 图是由顶点集(VertexSet)和边集(EdgeSet)组成,针对图G,顶点集和 ...
- 20172325 2017-2018-2 《Java程序设计》第九周学习总结
20172325 2017-2018-2 <Java程序设计>第九周学习总结 教材学习内容总结 异常 1.学习了异常的基本概念: 2.区分异常与错误: 一个异常是指一个定义非正常情况或错误 ...
- 20172325 2018-2019-1 《Java程序设计》第二周学习总结
20172325 2018-2019-1 <Java程序设计>第二周学习总结 教材学习内容总结 3.1集合 集合是一种聚集.组织了其他对象的对象.集合可以分为两大类:线性集合和非线性集合. ...
- 20172325《Java程序设计》第一周学习总结
20172325<Java程序设计>第一周学习总结 教材学习内容总结 第一章 1.1软件质量 软件工程是一门关于高质量软件开发的技术和理论的学科. 高质量软件的特征 1.2 数据结构 软件 ...
- 学号 20175212 《Java程序设计》第九周学习总结
学号 20175212 <Java程序设计>第九周学习总结 教材学习内容总结 一.MySQL数据库管理系统 1.在官网上下载并安装MySQL 2.在IDEA中输入测试代码Connectio ...
- 20145213《Java程序设计》第九周学习总结
20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...
- 《Java程序设计》第九周学习总结
20145224 <Java程序设计>第九周学习总结 第十六章 整合数据库 JDBC入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的 ...
- 20145236 《Java程序设计》第九周学习总结
20145236 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 整合数据库 JDBC简介 1.JDBC是java联机数据库的标准规范.它定义了一组标准类与接口,标准API ...
随机推荐
- tornado--同步异步
同步:指两个或两个以上随时间变化的量在变化过程中保持一定的相对关系 现象:有一个共同的时钟,按来的顺序一个一个处理 异步:双方不需要共同的时钟,也就是接收方不知道发送方什么时候发送,所以在发送的信息中 ...
- python入门-异常
1 报错的例子 print(5/0) 2跳过报错的例子 try: print(5/0) except ZeroDivisionError: print("You can't divide b ...
- jap 事务总结
参考: JPA事务总结 2010年4月13日 - 从表11-2中可以看出,对于不同的EntityManager类型与所运行的环境,所支持的事务类型是不一样的. 其中两种情况下最为简单,一种是容器托管的 ...
- 巧用JLINK来实现nrf51822的蓝牙设备流水号
项目需求:在蓝牙广播的时候名字为 SN_设备流水号(如SN_00000001). 我们可以在原来的代码中进行一下修改和增加 ; 备注这个地址0X0001B160根据自己具体情况来设定 /**@brie ...
- NavitForMySql 破解工具使用
Navicat 11.0注册机使用教程: 1.右键-管理员权限运行注册机2.选择对应的产品3.点击“补丁”按钮,选择文件4.点击“生成”按钮,生成序列号,并保存下授权文件5.复制序列号,打开软件,在弹 ...
- 4. mybatis实战教程(mybatis in action)之四:实现关联数据的查询
转自:https://www.cnblogs.com/shanheyongmu/p/5653599.html 有了前面几章的基础,对一些简单的应用是可以处理的,但在实际项目中,经常是关联表的查询,比如 ...
- HTML 标签元素的 align 属性
align 属性规定段落中文本的对齐方式. 有 left right center justify 这些参数 left right center 就是左对齐 右对齐 中间对齐 justify ...
- UI5-文档-4.5-Controllers
在这个步骤中,我们将文本替换为一个按钮,并在按钮被按下时显示“Hello World”消息.按钮的按下事件的处理是在视图的控制器中实现的. Preview A Say Hello button is ...
- C#怎么判断字符是不是汉字
.用ASCII码判断 在 ASCII码表中,英文的范围是0-,而汉字则是大于127,根据这个范围可以判断,具体代码如下: string text = "我去"; bool res ...
- redis之RDB持久化与AOF持久化
Redis是一个键值对数据库服务器,服务器中通常包含着任意个非空数据库,而每个非空数据库中又可以包含任意个键值对,为了方便起见,我们将服务器中的非空数据库以及它们的键值对统称为数据库状态. 因为Red ...