201521123105 第9周Java学习总结
1. 本周学习总结
2. 书面作业
本次PTA作业题集异常
1.常用异常
题目5-1
1.1 截图你的提交结果(出现学号)
1.2 自己以前编写的代码中经常出现什么异常、需要捕获吗(为什么)?应如何避免?
答:自己以前编写的代码经常出现异常就是数组越界,无需使用try-catch进行捕获处理,我们编写代码时应避免下标越界。
1.3 什么样的异常要求用户一定要使用捕获处理?
答:除了`Error`与`RuntimeException`及其子类的以外的都属于`Checked Exception`,需要用`try-catch`捕获来处理。
2.处理异常使你的程序更加健壮
2.1 截图你的提交结果(出现学号)
2.2 实验总结
3.throw与throws
3.1 截图你的提交结果(出现学号)
3.2 阅读Integer.parsetInt源代码,结合3.1说说抛出异常时需要传递给调用者一些什么信息?
4.函数题
4.1 截图你的提交结果(出现学号)
4.2 一个try块中如果可能抛出多种异常,捕获时需要注意些什么?
5.为如下代码加上异常处理
byte[] content = null;
FileInputStream fis = new FileInputStream("testfis.txt");
int bytesAvailabe = fis.available();//获得该文件可用的字节数
if(bytesAvailabe>0){
content = new byte[bytesAvailabe];//创建可容纳文件大小的数组
fis.read(content);//将文件内容读入数组
}
System.out.println(Arrays.toString(content));//打印数组内容
5.1 改正代码,让其可正常运行。注1:里面有多个方法均可能抛出异常。注2:要使用finally关闭资源。
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
byte[] content = null;
FileInputStream fis=null;
try{
fis = new FileInputStream("testfis.txt");
int bytesAvailabe = fis.available();//获得该文件可用的字节数
if(bytesAvailabe>0){
content = new byte[bytesAvailabe];//创建可容纳文件大小的数组
fis.read(content);//将文件内容读入数组
}
System.out.println(Arrays.toString(content));//打印数组内容
}
catch(IOException e){
System.out.println(e);
}
finally{
if(fis!=null){
fis.close();
}
}
}
5.2 使用Java7中的try-with-resources来改写上述代码实现自动关闭资源.
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
byte[] content = null;
try(FileInputStream fis=new FileInputStream("testfis.txt")){
int bytesAvailabe = fis.available();//获得该文件可用的字节数
if(bytesAvailabe>0){
content = new byte[bytesAvailabe];//创建可容纳文件大小的数组
fis.read(content);//将文件内容读入数组
}
System.out.println(Arrays.toString(content));//打印数组内容
}
catch(IOException e){
System.out.println(e);
}
}
201521123105 第9周Java学习总结的更多相关文章
- 201521123105 第8周Java学习总结
1.本周学习总结 1.1思维导图 2. 书面作业 本次作业题集集合 1.List中指定元素的删除(题目4-1) 1.1 实验总结 1.删除元素的时候从最后一个元素开始,避免删除元素后位置发生变化而导致 ...
- 201521123105 第七周Java学习总结
1. 本周学习总结 2. 书面作业 1.ArrayList代码分析 1.1 解释ArrayList的contains源代码 以下是ArrayList的contains源代码: public boole ...
- 201521123105 第三周Java学习总结
1. 本周学习总结 对象(实际个体) 对象与类 类(模板) 2.书面作业 1.代码阅读 public class Test1 { private int i = 1;//这行不能修改 private ...
- 201521123105 第11周Java学习总结
1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多线程相关内容. 2. 书面作业 本次PTA作业题集多线程 1. 互斥访问与同步访问 完成题集4-4(互斥访问)与4-5(同步访问) ...
- 201521123105 第10周Java学习总结
1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常与多线程相关内容. 2. 书面作业 本次PTA作业题集异常.多线程 1.finally 题目4-21.1 截图你的提交结果(出现 ...
- 201521123105 第六周Java学习总结
1. 本周学习总结 1.1 面向对象学习暂告一段落,请使用思维导图,以封装.继承.多态为核心概念画一张思维导图,对面向对象思想进行一个总结. 2. 书面作业 1.clone方法1.1 Object对象 ...
- 20165236 第六周Java学习总结
20165236 第六周Java学习总结 一. 第八章内容: 1.String 类: String对象.常量对象:字符串并置: 常用方法: length,equals,startsWith,compa ...
- 第五周Java学习总结(补)
第五周java学习内容(补) 学习内容: File类方法的操作 public String getName() public boolean canRead() public boolean canW ...
- 20165203《Java程序设计》第七周Java学习总结
20165203<Java程序设计>第七周Java学习总结 教材学习内容总结 第11章 JDBC与MySQL数据库 MySQL数据库管理系统 MySQL数据库管理系统,简称MySQL,是世 ...
随机推荐
- Strace跟踪解决expect乱码问题
--Strace跟踪解决expect乱码问题 ----------------------------------2014/07/27 情景:需要在本机抓去另外一台远程数据库中的数据. 执行语句:./ ...
- InnoDB: ERROR: the age of the last checkpoint
--InnoDB: ERROR: the age of the last checkpoint ---------------------------------------------------- ...
- Oracle进程与系统进程
--Oracle进程与系统进程 --------------------------2013/11/25 这里讨论Linux/Unix环境下,oracle v$process与操作系统对应的关系. 系 ...
- 朱世杰恒等式的应用-以CF841C为例
题目大意 Codeforces 841C Leha and Function. 令\(F(n,k)\)为在集合\(\{x|x \in [1,n]\}\)中选择一个大小为k的子集,最小元素的期望值. 给 ...
- HTML-JS基础 变量与输入输出 运算符 分支结构
js中的变量 1.JS中变量声明的写法: var num=10;//使用var声明的变量属于局部变量只在当前作用域内有效 num=10;//不用var声明的变量,默认为全局变量,在整个JS文件中都有效 ...
- UWP中使用Telerik UI For UWP
国际惯例先上一张图吧: 首先去下载Telerik UI For UWP的SDK,安装好之后在项目中添加SDK的引用 建议使用引用SDK,如果引用dll的话需要引用的dll较多不太方便 引用好之后以一个 ...
- 011.Adding Search to an ASP.NET Core MVC app --【给程序添加搜索功能】
Adding Search to an ASP.NET Core MVC app 给程序添加搜索功能 2017-3-7 7 分钟阅读时长 作者 本文内容 1.Adding Search by genr ...
- 程序员/PM怎么让项目预估的时间更加准确
项目时间的估算对项目的成败至关重要.项目时间管理包括了项目按时完成所需的各个过程.但是,在实际项目中,经常出现项目延期,估算严重不准确的现象. 一个我曾经共事过的很有经验的项目经理曾宣称说,他会拿程序 ...
- WPF控制动画开始、停止、暂停和恢复
1.闲言 好久也没更新一博客了,自己有点发懒,同时确实这几个月来也有点忙.风机监测软件,项目中,有这样一个小需求:正常风机在旋转的时候,上位机软要做一个风机的图片,让它不停地旋转,一但检测到下面风机停 ...
- [读书笔记] 四、SpringBoot中使用JPA 进行快速CRUD操作
通过Spring提供的JPA Hibernate实现,进行快速CRUD操作的一个栗子~. 视图用到了SpringBoot推荐的thymeleaf来解析,数据库使用的Mysql,代码详细我会贴在下面文章 ...