20165215 2017-2018-2 《Java程序设计》第5周学习总结
20165215 2017-2018-2 《Java程序设计》第5周学习总结
教材学习内容总结
chapter7
- Java支持在一个类中声明另外一个类,这样的类称作内部类,而包含内部类的类称为内部类的外嵌类
- 内部类的类体中不可以声明类变量和类方法
- 内部类可以被修饰为static内部类,但static内部类不能操作外嵌类中的实例变量成员
- 和某类/接口有关的匿名类就是该类的一个子类,该子类没有明显地用类声明来定义,所以称作匿名类
- 匿名类一定是内部类
- 异常类
- Java使用关键字
throw
抛出一个Exception子类的实例表示异常发生 - 将可能出现的异常操作放在try-catch语句的try部分,一旦try部分抛出异常对象,那么try部分将立刻结束执行,转向执行相应的catch部分
- 一个方法在声明时可以采用
throws
关键字声明要产生的若干个异常,并在该方法的方法体中具体给出产生异常的操作
- Java使用关键字
- 使用关键字
assert
声明断言语句- Java解释器直接运行应用程序时,默认地关闭断言语句,在调试程序时可以使用-ea启用断言预计
- 在try-catch语句中执行了return语句,那么finally子语句仍然会被执行;若执行了System.exit(0);,则不执行finally子语句
chapter10
- File类的对象主要是用来获取文件本身的一些信息,不涉及对文件的读写操作
- 文件字节输入、输出流的四个基本步骤
- 程序必须在try-catch语句中的try部分创建输入/输出流,在catch部分检测并处理这个异常
- 文件中的读取或写入,每次都是顺序进行,直到流被关闭或结束
- 文件字符输入、输出流基本与字节输入、输出同理
- 使用BufferReader流的方法readLine()读取文本行;使用BufferedReader类的方法write(String s,int off,int len)把字符串s写到写入文件。
- 用RandomAccessFile类创建的流称作随机流,随机流即可以作为流的源,也可以作为流的目的地
- RandomAccessFile流指向文件时,不刷新文件
- 其它方法:seek(long a);getFilePointer()
- 使用对象流获取序列化对象的克隆
- 使用Scanner类和正则表达式来解析文件的特点是以时间换取空间,即解析的速度相对较慢,但节省内存
- 使用默认分隔标记解析文件
使用useDelimiter方法指定正则表达式作为分隔标记
教材学习中的问题和解决过程
问题1:教材p167
异常对象可以调用如下方法得到或输出有关异常的信息
public String getMessage();
public void printStackTrace();
public String toString();
这三种方法的输出结果有什么差别?
代码调试中的问题和解决过程
问题1:ch7例子4中出现如下问题
- 问题1解决方案:将catch语句后漏掉的 { 补上即可
问题2:ch10例子1中编译结果出现偏差
问题2解决方案:将源文件中
File f = new File("java-besti-is-20165215/src/chapter10","Example10_1.java");
改为File f =new File(".","Example10_1.java");
后运行结果如下
问题3:编译ch10例子2时出现如下错误
问题3解决方案:出现fileName的位置统一好大小写;将
extendName
中漏掉的d补上
代码托管
(statistics.sh脚本的运行结果截图)
上周考试错题总结
- 对成员变量的操作只能放在方法中;面向对象语言中的“方法”相当于C语言中的“函数”。
- UML类图中方法的属性用+表示public,用-表示privat;继承用一个带三角的直线表示,由子类指向父类。
- Java程序以类为基本单位
- p72页例子8中圆锥对象委托圆对象调用getArea()方法计算底的面积
- 不能用protected和private修饰类
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第一周 | 37/37 | 1/1 | 15/15 | |
第二周 | 398/429 | 2/3 | 15/30 | |
第三周 | 753/1167 | 1/4 | 20/50 | |
第四周 | 1296/2109 | 2/6 | 20/70 | |
第五周 | 1191/3323 | 2/8 | 20/90 |
参考资料
20165215 2017-2018-2 《Java程序设计》第5周学习总结的更多相关文章
- 20165215 2017-2018-2 《Java程序设计》第九周学习总结
20165215 2017-2018-2 <Java程序设计>第九周学习总结 教材学习内容总结 URL类 URL 类是 java.net 包中的一个重要的类,使用 URL 创建对象的应用程 ...
- 20165215 2017-2018-2《Java程序设计》第一周学习总结
20165215 2017-2018-2 <Java程序设计>第一周学习总结 教材学习内容总结 跟随网课学习了<Java2 实用教程>的第一章,进行了基础的编译练习 在Ubun ...
- 学号 20175212 《Java程序设计》第九周学习总结
学号 20175212 <Java程序设计>第九周学习总结 教材学习内容总结 一.MySQL数据库管理系统 1.在官网上下载并安装MySQL 2.在IDEA中输入测试代码Connectio ...
- 20145213《Java程序设计》第九周学习总结
20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...
- 20145213《Java程序设计》第二周学习总结
20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...
- 20145213《Java程序设计》第一周学习总结
20145213<Java程序设计>第一周学习总结 教材学习内容总结 期待了一个寒假,终于见识到了神秘的娄老师和他的Java课.虽说算不上金风玉露一相逢,没有胜却人间无数也是情理之中,但娄 ...
- 21045308刘昊阳 《Java程序设计》第九周学习总结
21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...
- 20145330孙文馨 《Java程序设计》第一周学习总结
20145330孙文馨 <Java程序设计>第一周学习总结 教材学习内容总结 刚开始拿到这么厚一本书说没有压力是不可能的,开始从头看觉得很陌生进入不了状态,就稍微会有一点焦虑的感觉.于是就 ...
- 20145337 《Java程序设计》第九周学习总结
20145337 <Java程序设计>第九周学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC可以 ...
- 20145337 《Java程序设计》第二周学习总结
20145337 <Java程序设计>第二周学习总结 教材学习内容总结 Java可分基本类型与类类型: 基本类型分整数(short.int.long).字节(byte).浮点数(float ...
随机推荐
- python下载youtube视频
谷歌开源了一个新的数据集,BoundingBox,(网址在这里)这个数据集是经过人工标注的视频数据集,自然想将它尽快地运用在实际之中,那么首先需要将其下载下来:可以看到网址上给出的是csv文件,该文件 ...
- oracle如何查看执行计划
1.在PL/SQL Developer中得到一个SQL的执行计划 输入想要查看执行计划的目标SQL,再按一下快捷键F5就可以了.2.explain plan 命令 explain plan for + ...
- 【SQL】group by 和order by 的区别。
group by 分组,比如group by name.那么重复name就显示一遍,即同样内容归类显示一遍. group by ……having……——(where 后不可以接聚合函数,而having ...
- head 命令 读取文件的前n行,默认查看文件的前十行
head 命令 读取文件的前n行 默认查看文件的前十行 head /etc/passwd # 默认查看文件的前十行 /etc/passwd # 查看文件的前两行
- 【Oracle】使用bbed手动提交事务
有时候数据库挂掉,起库会出现ORA-00704错误,而导致ORA-00704错误的根本原因是訪问OBJ$的时候.ORACLE须要回滚段中的数据,而訪问回滚段的时候须要的undo数据已经被覆盖,此时我们 ...
- LVS集群简介及使用
什么是集群 一组通过高速网络互联的计算组,并以单一系统的模式加以管理 将很多服务器集中在一起,提供一种服务,在客户端看来就象是只有一个服务器 可以在付出较低成本的情况下获得在性能,可靠性,灵活性方面的 ...
- 轻量级ORM工具Simple.Data
今天推举的这篇文章,本意不是要推举文章的内容,而是据此介绍一下Simple.Data这个很有意思的类ORM工具. 现在大家在.NET开发中如果需要进行数据访问,那么基本都会使用一些ORM工具,比如微软 ...
- vue.js安装问题
1.安装:npm install --global vue-cli 2.创建项目:vue init webpack my-project npm WARN deprecated browserslis ...
- 微信小程序 - 表单验证插件WxValidate使用
插件下载地址及官方文档:https://github.com/skyvow/wx-extend 具体的WxValidate.js文件的位置在wx-extend/src/assets/plugins/w ...
- Python开发【项目】:选课系统-改良版
程序名称: 选课系统 角色:学校.学员.课程.讲师要求:1. 创建北京.上海 2 所学校2. 创建linux , python , go 3个课程 , linux\py 在北京开, go 在上海开3. ...