• Java中的异常处理机制


    Java中的异常处理机制

     示例

    public class test {
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
    		String s="hello";
    		int i=Integer.parseInt(s);
    	}
    }

    运行异常结果

    在上述代码中Integer.parseInt表示把字符串类型转化成整数类型,同时Integer是Int的封装类;程序会报错,因为计算机没有办法把hello转化成整数,这时就可以采用以下方式来解决这个问题

    public class test {
    	/**
    	 * try块中表示可能会出错的内容
    	 * catch块中是出错后执行的部分呢
    	 * */
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
    		String s="100";
    		try {
    			int i=Integer.parseInt(s);
    			/**
    			 *程序不会出错时是不会执行到 catch块中的
    			 * */
    		} catch (NumberFormatException e) {
    			// TODO Auto-generated catch block
    			e.printStackTrace();
    		}
    	}
    }

    在catch块中还可以进行这样的处理:system.out.println(e.getMessage)-->打印出错误语句信息;;e.printstackTrace()-->打印的是堆栈信息;;以上示例中的事件也可以处理也可以不处理

     必须处理的错误

    public static void main(String[] args){
        Class.forName("java.test");
    }

    抛出的错误为:Unhandle exception type ClassNotfoundException-->类没有找到的异常错误,这个错误系统要求必须处理,处理方式同上进行try{}catch{}来处理

     异常处理机制:程序运行时出现的,导致程序无法正常运行的错误称为异常

    1. Error:一般JVM运行的错误,不用处理,也没有办法处理
    2. Exception分为RuntimeException与非RuntimeException,运行异常可以选择处理或者不处理;非运行异常可以不用管太多

     异常类型总结

             RuntimeException:

        1. NullFointerExcption-->空指针异常
        2. IndexOutOfBoundException-->数组下标越界异常
        3. NumberFormatException-->数据格式异常
        4. ClassCastException-->类型转换异常
        5. IllegalArgumentException-->非法参数异常
        6. ArithmeticException-->算数异常

              非RuntimeException:

        1. ClassNotFoundException-->类加载异常
  • 相关阅读:
    自然数e为底数的指数函数的一个小运用
    Windows产品测试集合整理
    随手写的 IniFiles
    Windows C++ TLS 实现连接163邮箱
    Windows创建个人证书(C++实现,使用 as administrator)
    单进程单线程IOCP的实现(含客户端和服务端)
    32/64位下面的基本数据类型的大小
    WMI 获取操作系统名称和版本
    http 基本代理 C++实现(极简)
    获取内存大小、CPU大小、硬盘大小及使用率
  • 原文地址:https://www.cnblogs.com/sinon/p/5894667.html
Copyright © 2020-2023  润新知