zoukankan      html  css  js  c++  java
  • 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);
            }
            
        }

  • 相关阅读:
    Ros学习——Cmakelists.txt文件解读
    Ros学习——Movebase源码解读
    C++——STL之vector, list, deque容器对比与常用函数
    Ros学习——移动机器人Ros导航详解及源码解析
    C++——多线程
    C++——STL容器
    PHP对图片按照一定比例缩放并生成图片文件
    PHP二维数组排序
    PHP裁剪图片并上传完整demo
    [PHP] php实现文件下载
  • 原文地址:https://www.cnblogs.com/ssssss11/p/6749252.html
Copyright © 2011-2022 走看看