学号20155308 2016-2017-2 《Java程序设计》第6周学习总结
学号20155308 2016-2017-2 《Java程序设计》第6周学习总结
教材学习内容总结
第十章 输入与输出
目的:文件的读写;网络上传数据的基础;同样要掌握父类中方法。
10.1 InputStream与OutputStream
流(Stream)是对「输入输出」的抽象,注意「输入输出」是相对程序而言的:
System.in:标准输入,默认关联到键盘(终端输入)
System.out:标准输出,默认关联到显示器(终端输出)
System.err:标准错误,默认关联到显示器(终端输出)
输入输出重定向:setIn,setOut,setErr装饰器类
- Decorator模式
- BufferedInputStream与BufferedOutputStream: 内部提供缓冲,提高效率
- DataInputStream与DataOutputStream:基本数据类型与字节的转换
- ObjectInputStream与ObjectOutputStream
- java.io.Serializable接口
第十一章 线程与并行API
11.1 线程
线程生命周期

线程控制的一些方法
- interrupt
- sleep
- join
- stop(Deprecated)
- resume(Deprecated)
- suspend(Deprecated)
- destroy(Deprecated)
11.2 并行API
- Lock
- ReadWriteLock
- Condition
- Executor
- ScheduledThreadPoolExecutor
- ForkJoinPool
- 并发Collection
教材学习中的问题和解决过程
问题1:p305, IO.java: InputStrea/OutputStream的使用:
代码中的-1怎么来的?有什么用?问题1解决方案:
抽象类InputStream\OutputStream
方法read(), write(), close()
流结束的判断方法 read()的返回值为-1
readLine()返回值为null
文件读写类FileInputStrea\FileOutputStream
方法: read()方法将文件读入一个byte类型的数组,其数组长度可以由in.avalialbe()方法获得
read(byte[], int off, int len) off指从流中读入的字节所放入数组中的开始数字, len指读入长度
write(byte[], int off, int len) off指定数组的起始位置,从该位置起的字节写入流中,len指写入长度
问题2:p325 TortoiseHareRace.java: 单线程版龟兔赛跑。flags数组有什么作用?
C语言中需要这么处理吗?
问题2解决方案:代码中的flags数组存储了随机生成的true和fales,用来判断兔子是否睡觉。如果定义flags数组的时候只存储了true那么兔子就会一直睡觉zzzz。
C语言中不需要这么处理。
问题3:P327 Tortoise.java Hare.java TortoiseHareRace2.java: 代码运行中发现了什么问题?

出现了和书上结果不同的情况。
问题3解决方案:还未找到...
问题4p306 Copy.java: IO.java的测试类:
我要自己建一个id.txt的文件,里面输入自己的学号,再把id.txt拷贝到id1.txt中。问题4解决方案:

问题5p329 建立 Thread,是只有 Thread才可以使用简洁的Lambda表达式方法操作吗?
问题5解决方案:

或者

代码调试中的问题和解决过程
- 问题1:出现乱码问题
- 问题1解决方案:这是因为默认编码是IOS8859-1,需要转码
String target=request.getParameter("xxx");
String s= new String(target.getBytes("ISO8859_1"), "GBK");
代码托管


上周考试错题总结
- 错题一
输入"cd"命令并按回车键后,将会出现什么情况?
A .从当前目录切换到根目录
B .屏幕显示当前目录
C .从当前目录切换为上一级目录
D .从当前目录切换到用户主目录
错题情况:没有掌握好命令行的问题,实际原因是自己没有多多应用
答案:D。
解析:在Linux命令提示中,用cd命令来改变当前目录。这是cd命令的一些基本用法:
改变你的根路径,键入cd,按回车键。
进入一个特定的目录,键入cd,空格,路径名(例如 cd /usr/local/lib),再按回车键。
http://blog.163.com/jackylau_v/blog/static/175754040201291511197236/错题二
集合API 中Set接口的特点是?
A .不允许重复元素,元素有顺序
B .允许重复元素,元素无顺序
C .允许重复元素,元素有顺序
D .不允许重复元素,元素无顺序
- 错题情况:没有概括Set的应用,看书不仔细
- 答案D。
- 解析:有序的 collection(也称为序列)。此接口的用户可以对列表中每个元素的插入位置进行精确地控制。用户可以根据元素的整数索引(在列表中的位置)访问元素,并搜索列表中的元素。
http://blog.csdn.net/zuoanren/article/details/8619836 - 错题三
- 下列属于非受检异常的是哪项?
A .SQLException
B .IOException
C .NullPointerException
D .OutOfMemoryError
结对及互评
我的结对同学是黄月同学
- 博客中值得学习的或问题: 代码中的调试问题那个模块写的很仔细,让我解决了很多困扰我已久的问题,给了我很多启示。
- 代码中值得学习的或问题:我发现黄月的代码虽然不是特别多,但是精。
- 基于评分标准,我给本博客打分:10分(14分)。得分情况如下:
- 正确使用Markdown语法:+1
- 模板中的要素齐全:+1
- 教材学习中的问题和解决过程:+5
- 代码调试中的问题和解决过程:+1
- 本周有效代码超过300分行的:+2
- 其他加分:排版精美:+1
进度条中记录学习时间与改进情况:+1;
代码Commit Message规范 :+1;
感想,体会不假大空的+1。
评分标准
- 正确使用Markdown语法(加1分):
- 不使用Markdown不加分
- 有语法错误的不加分(链接打不开,表格不对,列表不正确...)
- 排版混乱的不加分
- 模板中的要素齐全(加1分)
- 缺少“教材学习中的问题和解决过程”的不加分
- 缺少“代码调试中的问题和解决过程”的不加分
- 代码托管不能打开的不加分
- 缺少“结对及互评”的不能打开的不加分
- 缺少“上周考试错题总结”的不能加分
- 缺少“进度条”的不能加分
- 缺少“参考资料”的不能加分
- 教材学习中的问题和解决过程, 一个问题加1分
- 代码调试中的问题和解决过程, 一个问题加1分
- 本周有效代码超过300分行的(加2分)
- 一周提交次数少于20次的不加分
- 其他加分:
- 周五前发博客的加1分
- 感想,体会不假大空的加1分
- 排版精美的加一分
- 进度条中记录学习时间与改进情况的加1分
- 有动手写新代码的加1分
- 课后选择题有验证的加1分
- 代码Commit Message规范的加1分
- 错题学习深入的加1分
- 点评认真,能指出博客和代码中的问题的加1分
- 结对学习情况真实可信的加1分
- 扣分:
- 有抄袭的扣至0分
- 代码作弊的扣至0分
- 迟交作业的扣至0分
点评模板:
- 博客中值得学习的或问题: - xxx - xxx - ...
- 代码中值得学习的或问题: - xxx - xxx - ...
- 基于评分标准,我给本博客打分:XX分。得分情况如下:xxx –
参考示例
点评过的同学博客和代码
本周结对学习情况
这一周我对InputStream和OutputStream的应用不是很了解,我的结对同学huang'yue黄月将她的所得给我讲了一遍,我觉得很有益处。结对照片

结对学习内容:了解了InputStream和OutputStream,重点学习了Reader与Writer。
上周博客互评情况
其他(感悟、思考等,可选)
- 这一周的课程比较难,但是因为要到了清明节,所以我还是提前完成了自己学习。在看书本时我感觉到了根据学习的深入,自己的一些学习的漏洞和学习的不足就体现出来了。应该稳扎稳打,有不会的问题及时解决,否则问题就会堆积,然后感到后面的学习越来越吃力。
- 通过这一周的学习,我发现书上的代码出现很多漏洞,每一次的调试都有很多问题,而且我自己也很难独自解决这些问题。结对学习是一个很好的方法,很好的解决了我的一些问题。
学习进度条
| 代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
|---|---|---|---|---|
| 目标 | 5000行 | 30篇 | 400小时 | |
| 第六周 | 400/2100 | 2/13 | 30/150 | 了解输入与输出 、线程与并行API |
尝试一下记录「计划学习时间」和「实际学习时间」,到期末看看能不能改进自己的计划能力。这个工作学习中很重要,也很有用。 耗时估计的公式 :Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。 参考:软件工程软件的估计为什么这么难,软件工程 估计方法
- 计划学习时间:20小时
- 实际学习时间:30小时
- 改进情况:我这周利用了很多的时间在Java上,因为我发现了越到后面不懂得东西越来越多,我认为自己的时间还是有一定的保障的。
(有空多看看现代软件工程 课件 软件工程师能力自我评价表)
参考资料
学号20155308 2016-2017-2 《Java程序设计》第6周学习总结的更多相关文章
- 学号 20175212 《Java程序设计》第九周学习总结
学号 20175212 <Java程序设计>第九周学习总结 教材学习内容总结 一.MySQL数据库管理系统 1.在官网上下载并安装MySQL 2.在IDEA中输入测试代码Connectio ...
- 学号20145303 《Java程序设计》第一周学习总结
学号20145303 <Java程序设计>第一周学习总结 教材学习内容总结 *dos命令行: dir:列出当前目录下的文件及文件名 md:创建目录 rd:删除目录.为空时文件夹(文件夹为空 ...
- 学号20145322 《Java程序设计》第一周学习总结
学号20145322 <Java程序设计>第一周学习总结 教材学习内容总结 Java诞生于Sun公司,于1998年12月4日发布J2SE,约以两年为一周期推出重大版本更新. 2010年Or ...
- 20155305乔磊2016-2017-2《Java程序设计》第九周学习总结
20155305 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 JDBC入门 JDBC简介 1.JDBC是java联机数据库的标准规范,它定义了一组标准类与 ...
- 201521123061 《Java程序设计》第九周学习总结
201521123061 <Java程序设计>第九周学习总结 1. 本周学习总结 2. 书面作业 本次PTA作业题集异常 1.常用异常 题目5-1 1.1 截图你的提交结果(出现学号) 1 ...
- 201521123038 《Java程序设计》 第九周学习总结
201521123038 <Java程序设计> 第九周学习总结 1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常相关内容. 2. 书面作业 本次PTA作业题集异常 ...
- 201521123045 <java程序设计>第11周学习总结
201521123045 <java程序设计>第11周学习总结 1. 本周学习总结 2. 书面作业 2. 书面作业 Q1.1.互斥访问与同步访问完成题集4-4(互斥访问)与4-5(同步访问 ...
- 20175313 张黎仙《Java程序设计》第九周学习总结
目录 学号 20175313 <Java程序设计>第九周学习总结 一.教材学习内容总结 二.教材学习中的问题和解决过程 三.代码托管 四.心得体会 五.学习进度条 六.参考资料 学号 20 ...
- 20175227张雪莹 2018-2019-2 《Java程序设计》第九周学习总结
20175227张雪莹 2018-2019-2 <Java程序设计>第九周学习总结 教材学习内容总结 第十一章 JDBC数据库操作 MySQL数据库管理系统 下载安装MySQL 若下载的是 ...
- 2018-2019-3《Java程序设计》第二周学习总结
学号20175329 2018-2019-3<Java程序设计>第二周学习总结 教材学习内容总结 第二三章与我们所学习的C语言有很多的相似点,在这里我想主要就以我所学习的效果来讨 ...
随机推荐
- win32.gui.api.con(前置,鼠标点击,发送数据的Dome)
# -*- coding: UTF-8 -*- import win32gui, win32con import os import time import win32gui import win32 ...
- 如何修改eclipse下注释的颜色
修改注释颜色:window -- preferences -- java --editor --syntax coloring -- comments 中的前两个就是修改注释颜色的.点击右边的colo ...
- requests爬取豆瓣热门电视剧
# *_*coding:utf-8 *_* import requests payload = {'key1': 'value1', 'key2': 'value2'} headers = {'use ...
- php $_SERVER['HTTP_USER_AGENT']
//获取浏览器 function getBrowse() { global $_SERVER; $Agent = $_SERVER['HTTP_USER_AGENT']; $browseinfo='' ...
- Inside Qt Series (全集,共十六篇,不同版本的Qt有不同的实现)
Inside Qt 系列 QObject这个 class 是 QT 对象模型的核心,绝大部分的 QT 类都是从这个类继承而来.这个模型的中心特征就是一个叫做信号和槽(signaland slot)的机 ...
- Mysql innodb 间隙锁 (转)
MySQL InnoDB支持三种行锁定方式: 行锁(Record Lock):锁直接加在索引记录上面. 间隙锁(Gap Lock):锁加在不存在的空闲空间,可以是两个索引记录之间,也可能是第一个索引记 ...
- java static{}块
java中static{}块只有在类加载是才会被调用. 这说明:static只有可能被调用一次. 原因:首先理解什么是类加载,区分类加载和申明对象的区别. public class StaticTes ...
- Raven: 2靶机入侵
0x00 前言 Raven 2是一个中等难度的boot2root 虚拟靶机.有四个flag需要找出.在多次被攻破后,Raven Security采取了额外措施来增强他们的网络服务器安全以防止黑客入侵. ...
- WEB入门.八 背景特效
学习内容 background属性 CSS Sprite 技术 滑动门技术 能力目标 使用background设置网页背景 使用Sprites制作平滑投票特效 使用滑动门技术实现Tab菜单 本章简介 ...
- PHP发送HTTP请求的几种方式
转发:https://blog.tanteng.me/2017/07/php-curl-guzzlehttp/ 1)PHP开发中我们常用CURL 方式封装 HTTP请求,什么是CURL? CURL 是 ...