#20175204 张湲祯 2018-2019-2《Java程序设计》第六周学习总结

20175204 张湲祯 2018-2019-2《Java程序设计》第六周学习总结

教材学习内容总结

-第七章内部类与异常类要点:

一.内部类:
Java支持在一个类中定义另一个类,这样的类称作内部类,而包含内部类的类称为内部类的外嵌类。
二.内部类和外嵌类之间的重要关系如下:
1、内部类的外嵌类的成员变量在内部类中仍然有效,内部类中的方法也可以调用外嵌类中的方法。
2、内部类的类体中不可以声明类变量和类方法。外嵌类的类体中可以用内部类声明对象,作为外嵌类的成员。
3、内部类仅供它的外嵌类使用,其他类不可以用某个类的内部类声明对象。
三.匿名类:
创建子类对象时,除了允许使用父类的构造方法之外还有类体,此类体被认为是一个子类去掉类声明对后的类体,称作匿名类。匿名类就是一个子类,由于无名可用,所以不可能用匿名类声明对象,但却可以直接用匿名类创建一个对象。
四.匿名类有一下特点:
1、匿名类可以继承父类的方法也可以重写父类的方法。
2、使用匿名类时,必然是在某个类中直接使用匿名类创建对象,因此匿名类一定是内部类。
3、匿名类可以访问外嵌类中的成员变量和方法,匿名类的类体中不可以声明static成员变量和static方法。
4、由于匿名类是一个子类,但没有类名,所以在用匿名类创建对象时,要直接使用父类的构造方法。
五.异常类:
java的异常可以出现在方法调试中,即在方法调用过程中抛出异常对象,导致程序运行出现异常,并且等待处理。java 使用Try-catch语句来处理异常,将可能出现的异常操作放在try部分,当try的某个方法发生一场之后,try部分将立即结束执行,转向相应的catch语句部分。

第十章 输入/输出要点:

一.串流设计的概念:
1.Java将输入/输出抽象化为串流,数据有来源及目的地,衔接两者的是串流对象。
2.从应用程序角度来看,如果要将数据从来源取出,可以使用输入串流,如果要将数据写入目的地,可以使用输出串流。在Java中,输入串流代表对象为java.io.Inputstream实例,输出串流代表对象为java.io.OutputStream实例。
3.在不使用InputStream与utputStream时,必须使用close()方法关闭串流。由于InputStream与OutputStrem操作了java.io.Closeable接口,其父接口为java.lang.AutoCloseable接口。
二.串流继承架构:
标准输入/输出
1.System.in与System.out查看API文件的话,会发现它们分别是InputStream与PrintStream的实例,分别代表标准输入与标准输出。
2.可以使用System的setIn()方法指定InputStream实例,重新指定标准输入来源。标准输出可以重新导向至文档,只要执行程序时使用>将输出结果导向至指定文档。可以使用System的setOut()方法指定printStream实例,将结果输出至指定的目的地。
三.串流处理装饰器:
InputStream、OutStream提供串流基本操作,如果想要为输入/输出的数据做加工处理,则可以使用打包器类。常用的打包器具备缓冲区作用的BufferedOutputStream、BufferedInputStream,具备数据转换处理的DataInputStream、DataOutputStream,具备对象串行化能力的ObjectInputStream、ObjectOutputStream等。
(1)BufferedInputStream与BufferedOutputStream
BufferedInputStream与BufferedOutputStream主要在内部提供缓冲区功能,操作上与InputStream、OutputStream并没有太大区别。
(2)DataInputStream与DataOutputStream
DataInputStream、DataOutputStream用来装饰InputStream、OutputStream,DataInputStream、DataOutputStream,提供读取、写入Java基本数据类型的方法,像是读写int、double、boolean等的方法。


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

1.问题: 在抛出异常中,throw和throws的区别。
解决方案:在网上通过搜索得知:
1.throws是用来声明一个方法可能抛出的所有异常信息
2.throw则是指抛出的一个具体的异常类型。
3.通常在一个方法(类)的声明处通过throws声明方法(类)可能抛出的异常信息,而在方法(类)内部通过throw声明一个具体的异常信息。
4.throws通常不用显示的捕获异常,可由系统自动将所有捕获的异常信息抛给上级方法。
5.throw则需要用户自己捕获相关的异常,而后在对其进行相关包装,最后在将包装后的异常信息抛出。


-代码托管

https://gitee.com/zyzgl/zyz


其他

学习了第七章第十章后,对于抛出异常,处理异常代码编写不能灵活运用,可能由于假期本周对Java学习时间没有上周多,对于一些基本概念没有理解,导致出现知识盲区,对于第十章输入输出流,只是对相关概念有了整体把握但也较难理解,还需要在下周用更多时间学习Java,对以前的知识漏洞和基础回看,熟悉。

上一篇:Jsp实现form的file和text传递(multipart/form-data)


下一篇:css3分栏