• 20165228 2017-2018-2 《Java程序设计》第5周学习总结


    20165228 2017-2018-2 《Java程序设计》第5周学习总结

    教材学习内容总结

    • 内部类和匿名类
    • 通过throw关键字抛出异常对象,终止方法的继续执行
    • 使用try-catch语句来处理程序运行过程中可能出现的异常
    • 区别throw和throws
    • 使用断言语句来处理程序不准备通过捕获异常的错误
    • 对输入流和输出流的理解
    • 使用FileInputStream类和FileOutputStream类创建输入流和输出流
    • 使用流读写字节(字符)以及关闭流
    • 对BufferedReader流和BufferedWriter流的应用
    • 使用RandomAccessFile类创建能读写的一个流
    • ByteArrayInputStream流和ByteArrayOutputStream流分别读写字节数组
    • CharArrayReader流和CharArrayWriter类
    • ObjectInputStream类和ObjectOutputStream类创建对象流来读写对象到程序中
    • 使用Scanner解析文件,用JFileChooser创建对话框

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

    • 问题1:关键字throw和throws的区别是什么?
    • 问题1解决方案:throw是语句抛出一个异常,一般是在代码块的内部,当程序出现某种逻辑错误时由程序员主动抛出某种特定类型的异常。throws是方法可能抛出异常的声明。(用在声明方法时,表示该方法可能要抛出异常)。例如:
    public void function() throws Exception{......}
    

    throw与throws的比较
    1、throws出现在方法函数头;而throw出现在函数体。
    2、throws表示出现异常的一种可能性,并不一定会发生这些异常;throw则是抛出了异常,执行throw则一定抛出了某种异常对象。
    3、两者都是消极处理异常的方式(这里的消极并不是说这种方式不好),只是抛出或者可能抛出异常,但是不会由函数去处理异常,真正的处理异常由函数的上层调用处理。

    • 问题2:对于Example10_1例子中出现了教材中没有说明的"createNewFile"方法,对它的作用及使用并不了解
    • 问题2解决方案:java中createNewFile方法主要是如果该文件已经存在,则不创建,返回一个false,如果没有,则返回true

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

    • 问题1:敲Example7_5代码时提示错误

    • 问题1解决方案:仔细核对代码后发现错误是将“printf”敲成了“println”,但是为什么会提示这个错误还未找到答案

    代码托管

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

    上周考试错题总结

    • 错题1:
      下列关于UML类图的说法,正确的是 AC
      A.抽象类和抽象方法一般用斜体表示。
      B.一般情况下,方法的属性用+表示private,用-表示public。
      C.在UML 里,一个类的属性能显示它的名字,类型,初始化值。
      D.继承用一个带三角的直线表示,由父类指向子类。
    • 解析:B项:用+表示public,用-表示private。D项:由子类指向父类。
    • 错题2:
      下列说法错误的是 C
      A.类是面向对象语言中最重要的一种数据类型,可以用类来声明变量。
      B.在用类声明对象后,还必须创建对象。
      C.用类声明的变量称为该类的一个全局变量。
      D.类是创建对象的模板,没有类就没有对象。用+表示public,用-表示private。D项:由子类指向父类。
    • 解析:用类声明的变量称为对象
    • 错题3:
      下列关于创建对象的说法,错误的是 CDE
      A.创建一个对象包括对象的声明和为对象分配变量两个步骤。
      B.使用Student stu;声明对象变量后,stu的内存中还没有任何数据。
      C.引用型成员变量的默认初值为0。
      D.对象的引用存在堆中,对象的实体(分配给对象的变量)存在栈中。
      E.String a="ab"+"cd";创建了3个对象。明的变量称为对象
    • 解析:C项:引用型成员变量的默认初值为null。D项:对象的引用存在栈中,对象的实体(分配给对象的变量)存在堆中
    • 错题4:
      关于类的叙述,正确的是 BCE
      A.Java程序以类中的方法为“基本单位”。
      B.每个源文件都是一个独立的编译单位。
      C.与类所在源文件名称相同的类,称为主类。
      D.使用“javac Example4_5.java”编译P67的Example4_5.java时,自动编译了Rect.java和Lader.java。
      E.可以使用“javac *.java”编译P67该目录下的所有Java文件。
      解析:A项:以类为基本单位。C项:含有main方法的类称为主类。

    学习进度条

    代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
    目标 5000行 25篇 400小时
    第一周 235/235 1/1 15/15
    第二周 224/459 2/3 15/30
    第三周 443/902 1/4 15/73
    第四周 577/1479 2/6 17/90
    第五周 1222/2360 1/7 14/104
    • 计划学习时间:20小时
    • 实际学习时间:14小时
  • 相关阅读:
    vue父子组件通信
    canvas(一)
    js中的this
    git中遇到的问题
    javaScript中各种数据结构的遍历
    git合并多个提交
    vue学习笔记(三)——vuex—store配置
    vue学习笔记(二)——路由配置
    0欧电阻的作用
    STM32L系列单片机内部EEPROM的读写
  • 原文地址:https://www.cnblogs.com/cloud795/p/8684326.html
Copyright © 2020-2023  润新知