• 20162311 2016-2017-2 《程序设计与数据结构》第七周学习总结


    20162311 2016-2017-2 《程序设计与数据结构》第七周学习总结

    教材学习内容总结

    1、什么是多态
    2、接口的定义与实现
    3、继承可适用于接口
    4、通过接口实现多态

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

    • 问题1:教材上有个知识点是通过继承实现多态,如果Mammal类是Horse类的父类,则Mammal引用是可以指向Horse类的对象,有以下代码
            Mammal pet;
            Horse secretariat = new Horse();
            pet = secretariat; // a valid assignment
    

    我开始并不理解。

    • 解决方案:老师在蓝墨云班课上有个视频是讲对象的转型,我的理解是这就是一种向上转型。

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

    • 问题1:在编译书上代码的时候总出现错误

      可是我并没有打错
    • 解决方案:因为9.1到9.7是关联在一起的,所以我看了这几个程序,发现count这个变量没有被声明过。于是我把count--给删除了,编译就能通过了,看来是书上的代码有错。

    代码托管

    (statistics.sh脚本的运行结果截图)

    上周考试错题总结

    第五周测试

    • 错题1:
    (多选题|1分)
    下面哪条命令可以把 f1.txt 复制为 f2.txt ?
    A .cp f1.txt f2.txt
    B .copy f1.txt f2.txt
    C .cat f1.txt > f2.txt 
    D .cp f1.txt | f2.txt 
    E .copy f1.txt | f2.txt 
    正确答案: A C  我的答案: A
    copy是Windows下的命令。cat f1.txt > f2.txt 通过输出重定向实现了复制。
    
    • 错题2:
    如果有以下程序片段:
      class Some{
    String ToString(){
     return "Some instance";
     }
      }
      public class Main{
      public static void main(String[] args){
       Some some = new Some();
       System.out.println(some);
      }
      }
    以下描述正确的是
    A .显示Some Instance
    B .显示Some@XXXX,XXXX为十六进制的数字
    C .发生ClassCastException
    D .编译失败
    正确答案: B  你的答案: D
    

    第六周测试

    • 错题1:
    如果有以下的程序代码:
    int[] arr1 = {1, 2, 3};
    int[] arr2 = new int[arr1.length];
    arr2 = arr1;
    for(int value : arr2) {
    System.out.printf("%d", value);
    }
    以下描述何者正确?
    A .
    执行时显示123
    B .
    执行时显示12300
    C .
    执行时出现 ArrayIndexOutOfBoundException 错误
    D .
    编译失败
    正确答案: A  
    按十进制打印数组arr2中的元素。
    
    • 错题2:
    如果有以下的程序代码:
    Int x=100;
    Int y=100;
    Integer wx=x;
    Integer wy=y;
    System.out.println(x==y);
    System.out.println(wx==wy);
    在JDK5以上的环境编译与执行,则显示的结果是
    A .true、true
    B .true、false
    C .false、true
    D .编译失败
    正确答案: A  
    Integer是包装类,`Integer wx=x`可以自动解析出int类型。
    
    • 错题3:
    如果有以下的程序代码:
    String [][] strs={
    {“Java”,“Java”,“Java”} ;
    {“Java”,“Java”,“Java”,“Java”};
    };
    For(______ row:strs){
    For(____ str:row){
    .........
    }
    }
    空白处应该分别填上
    A .String、String
    B .String、String[]
    C .String[]、String
    D .String[]、String[]
    正确答案: C  
    本题定义了一个二维数组,循环是打印出二维数组的元素,而其中的元素又是数组,类似于错题1中的for (int value:arr2)
    

    结对及互评

    点评模板:

    • 博客中值得学习的或问题:
      • 提出的问题和解决方法过于简单

    点评过的同学博客和代码

    感悟

    本周教材上的内容并不多,看了老师给的视频基本上就能理解了。所以主要精力还是放在了实验上。IDEA之前装过,但做实验的时候发现过期了,只能重新下载一个,在尝试实验过程中遇到很多问题,在老师的指导下一步步解决,加深了我对这些知识的理解。这次实验暴露出的最大问题就是,实践太少,真正自己编的程序太少,所以遇到一些问题不能及时的解决,而且我发现其他一些同学也有同样的问题。所以在今后的学习中要加强实践,书上的内容结合老师给的视频可以很快弄懂,但要真正的运用起来还是需要自己多动手写代码,而且不能是照着别人的代码抄,必须有自己的想法和思路,这样才能掌握Java这门语言。

    学习进度条

    代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
    目标 5000行 30篇 400小时
    第一周 113/113 1/1 10/10
    第二周 294/407 1/2 15/25
    第三周 433/840 1/3 15/40
    第四周 1169/2009 2/5 30/70
    第五周 825/2834 1/6 15/85
    第六周 331/3165 1/7 13/98
    第七周 738/3903 2/9 22/120
    • 计划学习时间:15小时

    • 实际学习时间:22小时

    • 改进情况:这周因为有实验,所以花的时间要多一些。教材的学习比较顺利。

    参考资料

  • 相关阅读:
    微信小程序、支付宝小程序、H5根据字符串生成相同的二维码
    大文件排序优化实践
    Nginx(五):http反向代理的实现
    Nginx(四):http服务器静态文件查找的实现
    关于大数据技术的一点思考
    Nginx(三):http模块的处理流程解析之正向代理
    基于Prometheus网关的监控完整实现参考
    谈谈mysql和oracle的使用感受 -- 差异
    Nginx(二): worker 进程处理流程框架解析
    退避算法实现之:客户端优雅回调
  • 原文地址:https://www.cnblogs.com/-zzr-/p/6702245.html
Copyright © 2020-2023  润新知