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

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

    教材学习内容总结

    • Java将输入/输出抽象化为串流,数据有来源及目的地,衔接两者的是串流对象。
    • 从应用程序角度来看,如果要将数据从来源取出,可以使用输入串流,如果要将数据写入目的地,可以使用输出串流。
    • 在来源与目的地都不知道的情况下可以设计一个通用的dump()方法,该方法接受InputStream与OutputStream实例,分别代表读取数据的来源,以及输出的目的地
      InputStream、OutStream提供串流基本操作,如果想要为输入/输出的数据做加工处理,则可以使用打包器类。常用的打包器具备缓冲区作用的BufferedOutputStream、BufferedInputStream,具备数据转换处理的DataInputStream、DataOutputStream,具备对象串行化能力的ObjectInputStream、ObjectOutputStream等。
    • 解析几个常用子类:
      StringReader可以将字符串打包,当做读取来源,StringWriter可以作为写入目的地,最后toString()取得所有写入的字符组成的字符串。CharArrayReader、CharArrayWriter类似,将char数组当做读取来源以及写入目的地。
      如果处理串流字节数据,将这些字节数据转换为对应的编码制度,可以使用 InputStringReader、InputStringWriter打包。
    • printWriter与PrintStream处理可以对OutputStream打包之外,Printwriter还可以对writer进行打包,提供print()、println()、format()等方法。
    • 在java中,如果想在main()以外独立设计流程,可以撰写类操作java.lang.Runnable接口,流程的进入点是操作在run()方法中。
    • 在java中,从main()开始的流程会由主线程执行,可以创建Thread实例来执行Runnable实例定义的run()方法。
    • 操作Runnable接口的好处就是较有弹性,你的类还有机会继承其他类。若继承了Thread,那该类就是一种Thread,通常是为了直接利用Thread中定义的一些方法,才会继承Thread来操作。
    • 在使用高级并行API时,Lock接口的操作对象可实现synchronized的功能。
    • ConcurrentHashMap是ConcurrentMap的操作类,ConcurrentNavigableMap是ConcurrentMap的子接口,其操作类为ConcurrentSkipListMap,可视为支持并行操作的TreeMap版本。

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

    • 1、书上p233页的代码范例中的“!input.matches("d")”是什么意思?
      通过看书上对代码的解析,得到如下解释:String 的 matches() 方法中设定了"d",这是规则表示式,表示检查字符串中的字符是不是数字,若是则 matches() 会返回true。

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

    无。

    代码量

    错题总结

    下列属于非受检异常的是哪项?
    A.SQLException
    B.IOException
    C.NullPointerException
    D.OutOfMemoryError
    答案:D

    异常分为受检异常与非受检异常,OutOfMemoryError属于Error为非受检异常
    分别插入到第5行,哪几行允许代码编译?
    A .Map c= new SortedMap();
    B .HashMap c= new HashMap();
    C .HashMap c= new Hashtable();
    D .SortedMap c= new TreeMap();
    E .ArrayList c= new ArrayList();
    F . Map c = new LinkedHashMap();
    答案:BDF

    代码托管

    结对及互评

    结对搭档:20155209

    其他(感悟、思考等,可选)
    通过这周的学习知道了java可以使多个线程并行的,cpu会在多个线程之中根据一定的规则选择进行,这两章感觉就是好多种java的类,这几周好像学习内容都是一些类、接口的运用,善用API进行查询相关接口、类的作用非常重要。还有,感觉学java就相当于是去学一门语言,就像英语、汉语一样,需要在脑海中去形成使用它的语法习惯,这样在编写代码是,就会自然而然地敲出相应的程序,然而要形成这种习惯,并熟练运用其中的各种句式、搭配还有相当长的一段路要走。

    学习进度条

    代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
    目标 5000行 15篇 300小时
    第一周 0/0 1/1 1/1
    第二周 100/100 1/2 5/6
    第三周 374/470 1/3 12/18
    第四周 600/1070 1/4 19/37
    第五周 1001/2071 1/5 17/54
    第六周 394/2465 1/6 8/62

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

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

    参考资料
    Java学习笔记(第8版)
    《Java学习笔记(第8版)》学习指导

  • 相关阅读:
    利用UltraScale和UltraScale+FPGA和MPSOC加速DSP设计生产力
    ARM系列处理器和架构
    Thumb扩展
    使用Redis分布式锁处理并发,解决超卖问题
    idea指定启动参数、环境变量
    Json返回结果为null属性不显示解决
    Spring Cloud Zuul 网关服务的fallback
    记录一次URL中有特殊字符怎么处理?
    logback的使用和logback.xml详解
    通过gitlab的webhook触发Jenkins自动构建设置
  • 原文地址:https://www.cnblogs.com/J1n233/p/6659077.html
Copyright © 2011-2022 走看看