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

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

教材学习内容总结

  1. 一切皆对象,输入输出也是类,线程也是
  2. String对象的trim方法去掉首尾空格和空字符
  3. filereader bufferreader 装饰者关系装饰者
  4. 被装饰者要作为参数传入装饰者
  5. 生成线程继承thread类,启动线程用start方法,用run就不是多线程
  6. 多线程实现:
    一种办法:生成thread 子类,调用run方法。
    另一种办法:先生成runable接口,再生成其实现类的对象,再新建thread对象(注意二者装饰关系,即runable 接口实现类的对象要传给thread)
  7. 控制方法:thread.sleep()中断线程,thread.yield()让出cpu,setPriority()设定优先级,getpriority()获取优先级,优先级最大10最小1。
  8. 多线程共用同一份数据,会出错。解决方法:用synchronized(this),锁住的是()中的对象。

教材学习中的问题和解决过程

  • 问题1:多个线程抢cpu,该怎么决定谁先谁后?
  • 问题1解决方案:是随机的,但是我们可以控制,我找到了这篇博客java中线程执行顺序控制
  • 问题2:InputStream与Reader差别 OutputStream与Writer差别
  • 问题2解决方案:InputStream和OutputStream类处理的是字节流,数据流中的最小单位是字节(8个bit)
    Reader与Writer处理的是字符流,在处理字符流时涉及了字符编码的转换问题

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

  • 问题1:在IDEA中运行程序遇到了如下图的错误。20155204 2016-2017-2 《Java程序设计》第6周学习总结

  • 问题1解决方案:查阅资料后得知,错误描述的是数组越界,而根据这个代码,应该是没有输入参数而导致的错误,在IDEA下输入参数我还没有找到合适的办法,所以转而在命令行下成功的运行20155204 2016-2017-2 《Java程序设计》第6周学习总结

代码托管

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

上周考试错题总结

上周考试好像有点问题。。

结对及互评

评分标准

  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分

点评模板:

  • 博客中值得学习的或问题:

  • 代码中值得学习的或问题:
    • xxx
    • xxx
    • ...
  • 基于评分标准,我给本博客打分:XX分。得分情况如下:xxx

  • 参考示例

点评过的同学博客和代码

  • 本周结对学习情况
    • 20155203
    • 结对照片
    • 20155204 2016-2017-2 《Java程序设计》第6周学习总结

    • 结对学习内容
      互相解决问题,包括两篇博客的问题以及一些平常的小问题,我们都有一起讨论。
  • 上周博客互评情况

其他(感悟、思考等,可选)

这周发现了学习视频,感觉学起来就完全不一样了,之前抱着80多页的课本啃啃啃,一周下来学的也是云里雾里,还十分劳累,课程的讲解思路清晰、重点分明,让我很快的就能进入状态,理解问题也比以前要省时省力。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 33/33 1/1 18/18
第二周 124/157 2/2 16/34
第三周 531/689 3/3 20/54
第四周 550/1239 4/4 22/76
第五周 847/2086 5/5 18/94
第六周 1300/3386 6/6 20/114

尝试一下记录「计划学习时间」和「实际学习时间」,到期末看看能不能改进自己的计划能力。这个工作学习中很重要,也很有用。
耗时估计的公式
:Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。

参考:软件工程软件的估计为什么这么难软件工程 估计方法

  • 计划学习时间:22小时

  • 实际学习时间:20小时

  • 改进情况:
    这次的学习时间把握的还可以,主要是敲代码省下了时间,很多重复的代码直接复制,把更多的时间花在了看视频学习上。
    (有空多看看现代软件工程 课件
    软件工程师能力自我评价表
    )

参考资料

上一篇:cocos2dx 碰撞检测


下一篇:js模块化方案以及前端打包工具