zoukankan      html  css  js  c++  java
  • 20155229 2016-2017-2 《Java程序设计》第十周学习总结

    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对象。

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

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

    本周暂时没有调试的问题

    代码托管

    上周考试错题总结

    暂不知上周的错题情况

    结对及互评

    评分标准

    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/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小时

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

    参考资料

  • 相关阅读:
    equals比较对象
    解决打包时出现的Failed to verify bitcode
    苹果的MDM简介
    unable to boot the simulator,无法启动模拟器已解决
    利用NSCalendar类实现日期的比较
    服务器开启https协议
    解决NSTimer存在的内存泄漏的问题
    ipad和iphone的适配
    集成shareSDK错误总结(新浪微博)
    AFN解析器里的坑
  • 原文地址:https://www.cnblogs.com/fyhtvxq/p/6786212.html
Copyright © 2011-2022 走看看