首页 > 代码库 > Java中的异常处理机制

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-->类加载异常

Java中的异常处理机制