20155229 2016-2017-2 《Java程序设计》第十周学习总结

本文总结了Java网络编程的基础知识,包括HTTP请求与响应、URL与URLConnection的使用等,并介绍了Java密码学体系结构,涵盖了JCA、JCE、JSSE和JAAS等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

20155229 2016-2017-2 《Java程序设计》第十周学习总结

教材学习内容总结

网络

  • 网络分为局域网、广域网、城域网
  • 一次HTTP请求包含3个部分:①方法--统一资源标识符--协议/版本
    ② 请求头
    ③ 请求实体

  • HTTP包含3个部分:①协议--状态码--说明;②响应头;③响应实体。
  • HTTP是URL中最常使用的协议
  • URLConnection类有两个布尔类型的字段,doInputdoOutput,他们分别表示URLConnection是用于读还是写.

  • 每个HTTP请求都可以使用HTTP标准中指定的众多请求方法之一。HTTP/1.1支持7种类型的请求:GETPOSTHEADOPTIONSPUTDELETETRACE.GETPOST是互联网应用程序中最常使用的请求。

  • 套接字是一个网络连接的端点。使得应用程序能够从网络读取或者向网络写入信息。

  • 使用URL只能读取一个Web资源。要向服务器写内容,需要使用java.net.URLConnection对象。

832288-20170429203739850-109752664.jpg

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);

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

本周暂时没有调试的问题

代码托管

832288-20170429203605959-694457322.jpg

上周考试错题总结

暂不知上周的错题情况

结对及互评

评分标准

  1. 正确使用Markdown语法(加1分):
    • 不使用Markdown不加分
    • 有语法错误的不加分(链接打不开,表格不对,列表不正确...)
    • 排版混乱的不加分
  2. 模板中的要素齐全(加1分)
    • 缺少“教材学习中的问题和解决过程”的不加分
    • 缺少“代码调试中的问题和解决过程”的不加分
    • 代码托管不能打开的不加分
    • 缺少“结对及互评”的不能打开的不加分
    • 缺少“上周考试错题总结”的不能加分
    • 缺少“进度条”的不能加分
    • 缺少“参考资料”的不能加分
  3. 教材学习中的问题和解决过程, 一个问题加1分

  4. 代码调试中的问题和解决过程, 一个问题加1分

  5. 本周有效代码超过300分行的(加2分)
    • 一周提交次数少于20次的不加分
  6. 其他加分:
    • 周五前发博客的加1分
    • 感想,体会不假大空的加1分
    • 排版精美的加一分
    • 进度条中记录学习时间与改进情况的加1分
    • 有动手写新代码的加1分
    • 课后选择题有验证的加1分
    • 代码Commit Message规范的加1分
    • 错题学习深入的加1分
    • 点评认真,能指出博客和代码中的问题的加1分
    • 结对学习情况真实可信的加1分
  7. 扣分:
    • 有抄袭的扣至0分
    • 代码作弊的扣至0分
    • 迟交作业的扣至0分

点评过的同学博客和代码

其他

本周学习了java与android开发学习指南的网络章节和java密码学算法,因为这几周都有做密码学的实验,是用c语言编写,而这次学习是用java对密码算法进行编写,发现了两种代码的差别。在学习网络板块时,发现java涉及的范围真的很广,在那么多领域都能够运用,所以我们还要多加强对java的学习。

学习进度条

代码行数(新增/累积)博客量(新增/累积)学习时间(新增/累积)重要成长
目标5000行15篇400小时
第一周9/91/120/20
第二周162/1711/225/45学习java的基础语法
第三周380/5511/325/70学习java对象及封装
第四周831/13821/423/93学习java的继承、接口与多态的运用
第五周870/22521/520/113学习java的异常处理和collection与map
第六周1241/34931/622/135学习java的输入输出、线程与Api,与搭档一起学习
第七周429/39222/815/150学习java的时间与日期、第一次实验
第八周390/43121/918/168学习java的通用API
第九周929/52412/1122/190学习java的整合数据库、第二次实验
第十周642/58831/1222/212学习java的密码学算法和andriod开发学习指南
  • 计划学习时间:25小时

  • 实际学习时间:22小时

  • 改进情况:本周在学习密码学算法和网络两板块花了较多时间理解代码,所以花的时间较多。

参考资料

转载于:https://www.cnblogs.com/fyhtvxq/p/6786212.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值