20155229 2016-2017-2 《Java程序设计》第十周学习总结
教材学习内容总结
网络
- 网络分为局域网、广域网、城域网
一次HTTP请求包含3个部分:①方法--统一资源标识符--协议/版本
② 请求头
③ 请求实体- HTTP包含3个部分:①协议--状态码--说明;②响应头;③响应实体。
- HTTP是URL中最常使用的协议
URLConnection
类有两个布尔类型的字段,doInput
和doOutput
,他们分别表示URLConnection
是用于读还是写.每个HTTP请求都可以使用HTTP标准中指定的众多请求方法之一。HTTP/1.1支持7种类型的请求:
GET
、POST
、HEAD
、OPTIONS
、PUT
、DELETE
和TRACE
.GET
和POST
是互联网应用程序中最常使用的请求。套接字是一个网络连接的端点。使得应用程序能够从网络读取或者向网络写入信息。
使用URL只能读取一个Web资源。要向服务器写内容,需要使用java.net.URLConnection对象。
Java与密码学
- Java安全体系结构总共分为4个部分:
①JCA( Java Cryptography Architecture, Java加密体系结构):JCA提供基本的加密框架, 如证书、 数字签名、消息摘要和密钥对产生器。
②JCE( Java Cryptography Extension, Java加密扩展包):JCE在JCA的基础上作了扩展, 提供了各种加密算法、 消息摘要算法和密钥管理等功能。JCE的实现主要在javax.crypto包( 及其子包) 中
③JSSE( Java Secure Sockets Extension, Java安全套接字扩展包):JSSE提供了基于SSL( Secure Sockets Layer,安全套接字层) 的加密功能。 在网络的传输过程中, 信息会经过多个主机(很有可能其中一台就被窃听) , 最终传送给接收者, 这是不安全的。这种确保网络通信安全的服务就是由JSSE来提供的。
④JAAS( Java Authentication and Authentication Service, Java鉴别与安全服务):JAAS提供了在Java平台上进行用户身份鉴别的功能。
教材学习中的问题和解决过程
- 问题一:22.6中使用await而没有使用wait,两者的区别为?
- 解决:
常用的wait方法有wait()和wait(long timeout);
void wait() 在其他线程调用此对象的 notify() 方法或者 notifyAll()方法前,导致当前线程等待。
void wait(long timeout)在其他线程调用此对象的notify() 方法 或者 notifyAll()方法,或者超过指定的时间量前,导致当前线程等待。
wait()后,线程会释放掉它所占有的“锁标志”,从而使线程所在对象中的其他shnchronized数据可被别的线程使用。
- 问题二:Android权限Uri.parse
- 解决:
- 卸载
Uri uninstallUri = Uri.fromParts("package", "xxx", null);
returnIt = new Intent(Intent.ACTION_DELETE, uninstallUri);
- 安装
Uri installUri = Uri.fromParts("package", "xxx", null);
returnIt = new Intent(Intent.ACTION_PACKAGE_ADDED, installUri);
代码调试中的问题和解决过程
本周暂时没有调试的问题
代码托管
上周考试错题总结
暂不知上周的错题情况
结对及互评
评分标准
- 正确使用Markdown语法(加1分):
- 不使用Markdown不加分
- 有语法错误的不加分(链接打不开,表格不对,列表不正确...)
- 排版混乱的不加分
- 模板中的要素齐全(加1分)
- 缺少“教材学习中的问题和解决过程”的不加分
- 缺少“代码调试中的问题和解决过程”的不加分
- 代码托管不能打开的不加分
- 缺少“结对及互评”的不能打开的不加分
- 缺少“上周考试错题总结”的不能加分
- 缺少“进度条”的不能加分
- 缺少“参考资料”的不能加分
教材学习中的问题和解决过程, 一个问题加1分
代码调试中的问题和解决过程, 一个问题加1分
- 本周有效代码超过300分行的(加2分)
- 一周提交次数少于20次的不加分
- 其他加分:
- 周五前发博客的加1分
- 感想,体会不假大空的加1分
- 排版精美的加一分
- 进度条中记录学习时间与改进情况的加1分
- 有动手写新代码的加1分
- 课后选择题有验证的加1分
- 代码Commit Message规范的加1分
- 错题学习深入的加1分
- 点评认真,能指出博客和代码中的问题的加1分
- 结对学习情况真实可信的加1分
- 扣分:
- 有抄袭的扣至0分
- 代码作弊的扣至0分
- 迟交作业的扣至0分
点评过的同学博客和代码
- 本周结对学习情况
结对照片
结对学习内容
1.学习java与android开发网络章节
2.学习java密码学算法
- 上周博客互评情况
其他
本周学习了java与android开发学习指南的网络章节和java密码学算法,因为这几周都有做密码学的实验,是用c语言编写,而这次学习是用java对密码算法进行编写,发现了两种代码的差别。在学习网络板块时,发现java涉及的范围真的很广,在那么多领域都能够运用,所以我们还要多加强对java的学习。
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 15篇 | 400小时 | |
第一周 | 9/9 | 1/1 | 20/20 | |
第二周 | 162/171 | 1/2 | 25/45 | 学习java的基础语法 |
第三周 | 380/551 | 1/3 | 25/70 | 学习java对象及封装 |
第四周 | 831/1382 | 1/4 | 23/93 | 学习java的继承、接口与多态的运用 |
第五周 | 870/2252 | 1/5 | 20/113 | 学习java的异常处理和collection与map |
第六周 | 1241/3493 | 1/6 | 22/135 | 学习java的输入输出、线程与Api,与搭档一起学习 |
第七周 | 429/3922 | 2/8 | 15/150 | 学习java的时间与日期、第一次实验 |
第八周 | 390/4312 | 1/9 | 18/168 | 学习java的通用API |
第九周 | 929/5241 | 2/11 | 22/190 | 学习java的整合数据库、第二次实验 |
第十周 | 642/5883 | 1/12 | 22/212 | 学习java的密码学算法和andriod开发学习指南 |
计划学习时间:25小时
实际学习时间:22小时
改进情况:本周在学习密码学算法和网络两板块花了较多时间理解代码,所以花的时间较多。