zoukankan      html  css  js  c++  java
  • java之异常

    java之异常——Exception

    代码运行中出现非正常性情况

    1.编译时异常,比如少个分号结尾,比如调用的模块没有引入或者找不到

    2.运行时异常,比如索引越界

     常见的异常有空指针异常,是因为拿了一个空对象去操作,java中不允许操作空对象

    异常可以直接抛出异常,也可以捕获异常,捕获异常中还有多重捕获

    注意:

    1.如果某个方法中抛出了异常,其他方法在调用这个抛出异常的方法时,也需要抛出异常,因为下层的方法抛出的异常会传给上层的调用者

    2.finally关键字,一般是加在try{}catch{}代码块后面,无论是否发生异常,finally代码块中的代码都会被执行,finally代码块中的代码一般是用来做回收资源等收尾的工作

    任何执行try 或者catch中的return语句之前,都会先执行finally语句

    获取异常信息常用方法

    1.getMessage() :获取详细的异常描述信息

    2.printStackTrace() :打印异常发生时的方法调用栈信息

    
    
    package com.test01;

    import java.io.*;
    import java.util.Properties;

    import java.util.zip.InflaterInputStream;

    public class exceptionDemo {

    //throws IOException 这是抛出IOException异常,除了抛出异常,我们还可以捕获异常
    public static void main(String[] args) throws IOException {
    //根据文件路径创建文件对象
    File file = new File("src/main/resources/log4j.properties");
    //Properties类是专门用来解析Properties文件的
    Properties properties = new Properties();
    //除了直接抛出异常,还可以捕获异常,并处理异常或输入信息,art+ctrl+t 快捷键
    try {
    //准备一个输入流对象 ,将文件对象放到这个字节流对象中来,字节流对象是放在properties调用的load方法中
    InputStream inputStream = new FileInputStream(file);
    //调用load方法,从输入流中加载数据到对象中
    properties.load(inputStream);
    } catch (IOException e) {
    e.printStackTrace();
    //获取详细的异常描述信息
    System.out.println(e.getMessage());
    //打印异常发生时的方法调用栈信息
    e.printStackTrace();
    }
    }
    }
     
    package com.test01;
    
    import java.util.ArrayList;
    import java.util.List;
    
    public class exceptionDemo2 {
        public static void main(String[] args) {
            List<String> lists = new ArrayList<String>();
            try {
                lists.add("黄超");
                lists.add("大鹏");
                System.out.println(lists.get(3)); //会报IndexOutOfBoundsException
            } catch (Exception e) {
                System.out.println("索引错误"); //控制台输出索引错误
            }
        }
    }
  • 相关阅读:
    瀑布流布局——JS+绝对定位
    浏览器事件的思考
    css的hack详解
    主流浏览器的Hack写法
    [HTML&CSS] 未知高度多行文本垂直居中
    HTML标签的默认样式列表
    推荐的 CSS 书写顺序
    高效整洁CSS代码原则 (上)
    高效整洁CSS代码原则 (下)
    Xcode升级导致插件失效的解决办法
  • 原文地址:https://www.cnblogs.com/zhaobobo001/p/14616627.html
Copyright © 2011-2022 走看看