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);
            }
            
        }

  • 相关阅读:
    跑酷游戏的一些bug总结(滥用FixedUpdate的坑)
    Unity在编辑器状态下清空控制台信息
    Unity脚本在层级面板中的执行顺序测试3
    IronPython使用
    RSA加密的测试demo
    常用加密算法学习
    c#读写ini文件
    Jrebel激活方法(转)
    ThreadLocal Memory Leak in Java web application
    Java Thread Local – How to use and code sample(转)
  • 原文地址:https://www.cnblogs.com/ssssss11/p/6749252.html
Copyright © 2011-2022 走看看