20155225 2006-2007-2 《Java程序设计》第五周学习总结

教材学习内容总结

使用try、catch异常处理,异常处理继承架构等

使用Collection收集对象,了解Collection架构

使用Map建立键值对应数据,了解Map架构

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

 @Override
public String toString() {
return String.format("(%s, %s)", name, number);
}

toString()是定义在Object中的一个方法,String类是Object的子类,String类重写了这个方法,现在是在Student类中重写toString(),作用是将类中两个字符串变量根据我制定字符串格式和参数生成格式化的新字符串。

  • 问题2:书上269页代码有问题,应该是System.out.println(students);

  • 问题3:这段代码中用到的add()方法,是直接将新建的Student对象加入students中,此处是不是已经默认会调用toString()方法合成字符串并将返回的字符串存入students,所以最后才会直接打印出来合成后的字符串。

public class Students {
public static void main(String[] args) {
Set students = new HashSet();
students.add(new Student("Justin", "B835031"));
students.add(new Student("Monica", "B835032"));
students.add(new Student("Justin", "B835031"));
System.out.println(students);
}
}
  • 问题4:为什么要用getclass()再去取得这个对象所对应的对象(不就是本身吗?)为什么不能写成getClass()!=obj;
@Override
public boolean equals(Object obj) {
if (obj == null) {
return false;
}
if (getClass() != obj.getClass()) {
return false;
}//比较是不是参考的同一个对象
final Student2 other = (Student2) obj;//不明白!!!
if (!Objects.equals(this.name, other.name)) {
return false;
}//这里不就是重定义equals吗?又调用equals是什么意思?
if (!Objects.equals(this.number, other.number)) {
return false;
}
return true;
}
  • 解决方法:百度找了篇文章Object中getClass()方法详解obj只是一个标签,要取得这个标签对应的对象实例就要用getclass(),但是比较标签是不是参考到同一个实例,直接用=不就行了吗?

  • 问题5:272页代码,以下代码中Request是定义的一个接口,为什么后面会有Request request = new Request(),难道接口可以实例化?

interface Request {
void execute();
} static void offerRequestTo(Queue requests) {
for (int i = 1; i < 6; i++) {
Request request = new Request() {
public void execute() {
System.out.printf("处理资料 %f%n", Math.random());
}
};
requests.offer(request);
}
}
}

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

  • 问题1:编译的时候提示使用了未经检查或不安全的操作。

  • 解决方案:查了百度,是没有使用泛型的原因,但使用后仍然这样提示。还在努力中……

代码托管



上周考试错题总结

  • 错题1:使用JDB进行调试时查看源代码的命令是(list)
  • 原因:还没弄好JDB,还没调试过。
  • 错题2:”Hello”.substring( 0,2 )的值是“He”
  • 理解情况:还不会看API文档。截取字符串的方法。
  • 错题3:可以用父类声明对象引用,用子类生成对象,但需要强制类型转换。
  • 原因和理解情况:不知道这句话什么意思。也就是Role Role = new SworsMan()这个例子。
  • 错题4:面向对象中,设计经验可以用(设计模式)表达
  • 错题5:Math中的abs()方法可以Override.(X)
  • 理解情况:abs()是取数值绝对值的方法。

结对及互评

评分标准(满分10分)

  1. 从0分加到10分为止

  2. 正确使用Markdown语法(加1分):

    • 不使用Markdown不加分
    • 有语法错误的不加分(链接打不开,表格不对,列表不正确...)
    • 排版混乱的不加分
  3. 模板中的要素齐全(加1分)

    • 缺少“教材学习中的问题和解决过程”的不加分
    • 缺少“代码调试中的问题和解决过程”的不加分
    • 代码托管不能打开的不加分
    • 缺少“结对及互评”的不能打开的不加分
    • 缺少“上周考试错题总结”的不能加分
    • 缺少“进度条”的不能加分
    • 缺少“参考资料”的不能加分
  4. 教材学习中的问题和解决过程, 一个问题加1分

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

  6. 本周有效代码超过300分行的(加2分)

    • 一周提交次数少于20次的不加分

6 其他加分:

- 周五前发博客的加1分

- 感想,体会不假大空的加1分

- 排版精美的加一分

- 进度条中记录学习时间与改进情况的加1分

- 有动手写新代码的加1分

- 课后选择题有验证的加1分

- 代码Commit Message规范的加1分

- 错题学习深入的加1分

7 扣分:

- 有抄袭的扣至0分

- 代码作弊的扣至0分

点评模板:

  • 基于评分标准,我给本博客打分:(0-10)。得分情况如下:xxx

  • 参考示例

点评过的同学博客和代码

其他

这周学习感觉问题更多了,可能之前的学习特别是对示范代码的学习太流于表面,只是在打字母,而不是在敲代码。认真分析起代码来,觉得很多地方不理解为什么怎么写,正在努力改进。同时我感受到一点面向对象和C语言面向过程不同,面向过程很注重从内存看问题,任何一步操作都要知道在内存里发生了什么,而面向对象则不然,书上的讲述中也可以感受到更注重调用方法后的结果,而不甚关心内存。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 10/10 1/7 20/20
第二周 120/130 1/8 8/38
第三周 543/673 1/9 25/60
第四周 529/1072 1/10 25/90
第五周 609/1681 1/11 20/110

实际学习时间20.

计划学习时间15.

参考资料

20155225 2016-2017-2 《Java程序设计》第五周学习总结的更多相关文章

  1. 201521123025<java程序设计>第五周学习总结

    1. 本周学习总结 2. 书面作业 1.代码阅读:Child压缩包内源代码 1.1 com.parent包中Child.java文件能否编译通过?哪句会出现错误?试改正该错误.并分析输出结果. 1.2 ...

  2. Java程序设计第五周学习总结

    1. 本周学习总结 1.1 尝试使用思维导图总结有关多态与接口的知识点. 1.2 可选:使用常规方法总结其他上课内容. 2. 书面作业 **代码阅读:Child压缩包内源代码 Child.java源代 ...

  3. 20155225 2016-2017-2 《Java程序设计》第九周学习总结

    20155225 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 JDBC入门 了解JDBC架构 使用JDBC API JDBC是用于执行SQL的解决方案,开 ...

  4. 20155225 2016-2017-2 《Java程序设计》第一周学习总结

    20155225 2016-2017-2 <Java程序设计>第一周学习总结 教材学习内容总结 JVM(java virtual machine)就是java虚拟机,我的理解就是编译运行j ...

  5. 20155326 2016-2017-2 《Java程序设计》第九周学习总结

    20155326 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 1.撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找. 2.JDBC目的 ...

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

    20155229 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 JDBC(Java DataBaseConnectivity)即java数据库连接 ...

  7. 20145213《Java程序设计》第九周学习总结

    20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...

  8. 21045308刘昊阳 《Java程序设计》第九周学习总结

    21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...

  9. 20145236 《Java程序设计》第九周学习总结

    20145236 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 整合数据库 JDBC简介 1.JDBC是java联机数据库的标准规范.它定义了一组标准类与接口,标准API ...

  10. 20155304田宜楠2006-2007-2 《Java程序设计》第一周学习总结

    20155304田宜楠2006-2007-2 <Java程序设计>第一周学习总结 教材学习内容总结 - 浏览教材,根据自己的理解每章提出一个问题 第一章 除了书上提到的开发工具还有什么适合 ...

随机推荐

  1. JavaScript权威指南--多媒体和图形编程

    知识要点 21.1节介绍如何用传统的JavaScript技术实现诸如图片翻转(鼠标指针移动到一张静态图片上切换成另外一张图片)这样的视觉效果. 21.2节介绍HTML5的<audio>和& ...

  2. Spring Boot中注解事务

  3. URAL 1501 Sense of Beauty

    URAL 1501 思路: dp+记忆化搜索 状态:dp[i][j]表示选取第一堆前i个和第二堆前j的状态:0:0多1个              1:0和1相等                2:1 ...

  4. JAVA反射会降低你的程序性能吗?

    原文出处 早两天写了<从把三千行代码重构成15行代码谈起>这篇文章,看到评论中有一些同学的回复还是在质疑反射的性能,好像程序用上了反射,就像开上了拖拉机似的.本来我觉得这个话题没有什么好讨 ...

  5. 『PyTorch』第四弹_通过LeNet初识pytorch神经网络_下

    『PyTorch』第四弹_通过LeNet初识pytorch神经网络_上 # Author : Hellcat # Time : 2018/2/11 import torch as t import t ...

  6. hdu 2266 dfs+1258

    How Many Equations Can You Find Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 ...

  7. hihoCoder-1087 Hamiltonian Cycle (记忆化搜索)

    描述 Given a directed graph containing n vertice (numbered from 1 to n) and m edges. Can you tell us h ...

  8. Oracle性能诊断艺术-读书笔记(范围分区)

    1. PARTITION RANGE SINGLE 注意:操作2 中的 TABLE ACCESS FULL 并不是全表扫描,只是对分区1 做 全分区扫描 case2 2. 分区范围迭代(PARTITI ...

  9. C# Winform程序以及窗体运行的唯一性汇总

    经常看到有人讨论程序运行唯一性或者窗体运行的唯一性问题.我之前也写了一些文章,在此把它进行整理汇总. 如果是程序的唯一性问题,我之前的一篇文章已经写得很全面,可以参看. C# Winform如何使自己 ...

  10. CSS样式属性——字体+文本

    CSS属性可分为以下几类:字体.背景.文本.位置.布局.边缘.列表 1. 字体——主要包括文字的字体.大小.颜色.显示效果等基本样式 font-family:用于设置字体系列 font-size:字体 ...