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

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

教材学习内容总结

1、内部类:在一个类中定义另一个类;外嵌类:包含内部类的类。

2、内部类的类体中不能声明类变量和类方法;外嵌类的类体中可以用内部类声明对象。

3、非内部类不能是static类。

4、匿名类:一个子类去掉类声明后的类体。

用Bank的一个子类(匿名类)创建对象:

new Bank() {

  匿名类的类体

};

5、断言语句:一般用于程序不准备通过捕获异常来处理的错误。

断言语句的语法格式:

assert booleanExpression; 当booleanExpression的值是true时,程序从断言语句处继续执行;值是false时,程序从断言语句处停止执行。

assert booleanExpression:messageException; 当booleanExpression的值是true时,程序从断言语句处继续执行;值是false时,程序从断言语句处停止执行,并输出messageException,提示用户出现什么样的问题。

6、如果在try-catch语句中执行了return语句,那么finally子语句仍然会被执行。

7、try-catch语句中执行了程序退出代码,即执行System.exit(0);则不执行finally子语句。

8、File类的对象主要用来获取文件本身的一些信息。

9、创建File对象的构造方法(其中filename是文件的名字,directoryPath是文件的路径,dir为一个目录):

File(String filename);

File(String directoryPath,String filename);

File(File dir,String filename);

10、使用输入流步骤:

设定输入流的源——>创建指向源的输入流——>让输入流读取源中的数据——>关闭输入流。

11、使用输出流步骤:

给出输出流的目的地——>创建指向目的地的输出流——>让输出流把数据写入到目的地——>关闭输出流。

12、使用Scanner解析文件:

创建Scanner对象,并指向要解析的文件——>使用useDelimiter方法指定正则表达式作为分隔标记。

13、读取文件时可以使用javax.swing包提供的输入流类ProgressMonitorInputStream。

构造方法: ProgressMonitorInputStream(Component c,

String s,InputStream);

14、文件锁:
先使用RandomAccessFile流创建指定文件的流对象,该对象的读写属性必须是rw;

input流调用方法getChannel()获得一个连接到底层文件的FieChannel对象(信道)

信道调用tryLock()或lock()方法获得一个FileLock(文件锁)对象 :加锁;

文件锁对象产生后,将禁止任何程序对文件进行操作或者再进行加锁。

代码上传:

代码托管

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

本周代码项目截图

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 80/80 1/1 18/18 学会编写简单的JAVA应用程序
第二周 357/437 2/3 15/33 掌握数组、符号、数据的使用
第三周 695/1132 2/5 20/53 了解类与对象的基本结构和构造方法
第四周 765/1897 2/7 27/70 了解子类与继承、接口与实现
第五周 1174/3071 2/9 15/85 学会了异常处理,理解文件流的使用和特点
posted @ 2018-03-29 16:27  好好学习JAVA  阅读(273)  评论(4编辑  收藏  举报