20175202 2018-2019-2 Java程序设计》第六周学习总结

教材知识点总结

1.内部类:

Java支持在一个类中定义另一个类,称作内部类,包含内部类的类叫做外嵌类。

内部类的外嵌类的成员变量在内部类中仍然有效,内部类也可以调用其方法。

内部类的类体中不能声明变量和方法。

内部类仅供其外嵌类使用。

2.匿名类:

匿名类可以继承和重写父类的方法,且匿名类一定是内部类。

匿名类可以访问外嵌类的变量和方法,匿名类的类体不能声明static变量和方法。

创建对象时,必须使用父类的构造方法。

Java允许直接使用接口名和一个了哦提创建一个匿名对象。

3.异常类:

Java允许定义方法时声明parseInt()方法调用过程中可能出现的异常,即允许方法调用过程中抛出异常对象,终止当前方法。

Java使用try-catch语句来处理异常,也可以扩展Exception类定义自己的异常类。

4.断言:

一般用于程序不准备通过捕获异常来处理的错误。

5.File类:

File类的对象来或许文件本身的信息,不涉及文件的读写操作。

创建File对象的构造方法有三个,filename时文件名字,directoryPath是文件的路径,dir为一个目录。

我们经常使用File类的一些方法来获取文件的本身信息(详见课本P282),例如:public String getName()用来获取文件的名字。

File对象用方法public boolean mkdir()来创建目录,调用方法public boolean delete()来删除当前文件。

6.输入流:

当对文件读取需求简单时,可以使用FileInputStream类(文件字节输入流),该类时InputStream类的子类(以字节为单位读取文件),该类的实例方法都是从InputStream类继承来的。

7.输出流:

当对文件写入需求简单时,可以使用FileOutputStream类(文件字节输出流),该类是OutputStream类的子类(以字节为单位写入内容),该类的实例方法都是从OutputStream类继承来的。

8.缓冲流、随机流、数组流、对象流:(P290-300)。

9.序列化与对象克隆:

若想“复制”一个对象,复制品的变化不会使其本身变化,反之也是。这样的复制品称为原对象的克隆对象。

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

问题1:不理解为什么要设计匿名类,使用匿名类的意义到底是什么呢。

解决方案:如果一个方法的参数类型是A类,用户希望向方法传递A的子类对象,但系统没有提供符合要求的子类,那么用户在编写代码时就可以考虑使用匿名类。

问题2:第十章的许多代码出现编译错误。

解决方案:自己习惯性的喜欢把所以类放在一起编写再编译运行,然而忘记将主类代码最前面的inport java awt.*等语句删除,造成编译错误,删除后即可正确通过编译并实现功能。

问题3:输入流那里看的不太明白,到数组流的时候看不懂书上的解释和意思。

解决方案:字节数组流对象分为输入流和输出流。分别是:ByteArrayInputStream和ByteArrayOutputStream。

字节数组输入流在内存创建一个字节数组缓冲区,从输入流读取的数据保存在该字节数组缓冲区中。创建字节数组输入流对象有以下方式:

//方法 1

ByteArrayInputStream bArray = new ByteArrayInputStream(byte [] a);

//方法 2

ByteArrayInputStream bArray = new ByteArrayInputStream(byte []a, int off, int len)

代码托管

心得体会

  Java课程在这周的任务量很重,加上本周有清明节假期。因此本周自己在周二就开始了相关内容的学习,这对做事拖拉的自己是一个很大的进步。在第七章的内容相对比较好理解,目前已经初步掌握,但第十章的输入输出流,尤其是数组流、对象流等真的非常难理解,自己现在还是一知半解。包括后面的几个小节,自己目前只是运行了一下代码,蜻蜓点水势的掠过去了。在之后的清明节假期,自己还将认真进行Java第十章内容的学习!

上周错题总结

上周的测试中无错题。

20175202 《Java程序设计》第六周学习总结的更多相关文章

  1. 20175202 《Java程序设计》第九周学习总结

    20175202 2018-2019-2 <Java程序设计>第九周学习总结 教材知识点总结 第11章 JDBC与MySQL数据库 MySQL数据库管理系统 MySQL数据库管理系统,简称 ...

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

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

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

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

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

    20145224 <Java程序设计>第九周学习总结 第十六章 整合数据库 JDBC入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的 ...

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

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

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

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

  7. 20155303 2016-2017-2 《Java程序设计》第二周学习总结

    20155303 2016-2017-2 <Java程序设计>第二周学习总结 教材学习内容总结 『注意』 "//"为单行批注符: "/*"与&quo ...

  8. 20145237 《Java程序设计》第九周学习总结

    20145237 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 整合数据库 JDBC入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令 ...

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

    20175209 <Java程序设计>第九周学习总结 一.教材知识点总结 有关数据库下载中存在可能出现的问题已经在博客<数据库安装和使用过程中出现的一些问题>给出了相应的解决办 ...

  10. 20175313 张黎仙《Java程序设计》第九周学习总结

    目录 学号 20175313 <Java程序设计>第九周学习总结 一.教材学习内容总结 二.教材学习中的问题和解决过程 三.代码托管 四.心得体会 五.学习进度条 六.参考资料 学号 20 ...

随机推荐

  1. 验证GridControl Gridview 单元格。

    一般的验证方法,使用单元格值改变事件.现在记录另一个事件实现验证. 场景:控制当某个单元格的值的长度不能超过10 直接看代码: private void gridViewFileContent_Val ...

  2. 0x80070522:客户端没有所需的特权的解决方法(win7,win10通过)

    往C盘上粘贴文件的时候提示错误0x80070522:客户端没有所需的特权,解决方法如下: 一般情况下,我们思考的方向肯定是往用户权限方向的,但增加的用户是最高权限的管理员还是不可以..   暂时还没有 ...

  3. ionic3样例应用

    https://github.com/jujunjun/ionic3-study 该应用包括的样例内容有: 文件上传,上拉更新,下拉加载,弹出层,列表,加载中,栅格,按钮等. php提供的文件上传接口 ...

  4. ftp 发布配置

    地址:ftp://192.168.26.128/ 存放文件夹:jenkins

  5. Spring源码学习(5)—— bean的加载 part 2

    之前归纳了从spring容器的缓存中直接获取bean的情况,接下来就需要从头开始bean的加载过程了.这里着重看单例的bean的加载 if(ex1.isSingleton()) { sharedIns ...

  6. matlab json文件解析 需要下载一个jsonlab-1.5

    % facebookX24.m clc; addpath('C:\Program Files\MATLAB\R2015b\toolbox\jsonlab-1.5'); % read .json jso ...

  7. php 多维数组 array sort 排序 :array_multisort

    1.参考链接: php简单实现多维数组排序的方法 参考二: 这个链接很好,可以直接看这个:PHP array_multisort—对多个数组或多维数组进行排序 2.案例一: //13: 最佳: pub ...

  8. R画图的颜色搭配

    colors()函数列出当前已经支持的颜色名称 [19] "bisque3" "bisque4" "black" [22] "bl ...

  9. 如何将新建的项目完整的提交到gitlab上?

    描述: 使用idea开发工具新建了一个项目工程,此时此刻工程没有任何的版本控制,代码存放在本地磁盘中,如果需要直接将项目工程代码提交到gitlab上,该如何操作呢? 因为当前没有版本控制,不能像正常的 ...

  10. python 操作手机

    https://blog.csdn.net/wave_1102/article/details/41630469 import os import time import subprocess i = ...