java异常中error,exception区别,java异常捕获 exception

  java异常中error,exception区别,java异常捕获 exception

  00-1010异常介绍公共运行时异常1。空指针异常2。数学运算异常3。数组下标越界异常4。类型转换异常5。不正确的数字格式异常处理流程

  00-1010基本概念

  程序执行中的异常情况称为异常。(语法错误和逻辑错误也不例外)。

  异常是指程序运行过程中发生的异常事件,通常是由外部问题(如硬件错误和输入错误)引起的。异常属于Java等面向对象编程语言中的对象。

  异常本身就是一个对象,产生一个异常就意味着产生一个异常对象。

  对于Java检查异常,强制要求如果一个方法抛出一个检查异常,必须通过throws声明异常;如果抛出未经检查的异常,必须声明它。

  包com.demo/* * * * @ 1.0版* @ auther Demo dragon */public class exception 01 { public static void main(string[]args){ int num 1=10;int num 2=0;//Scanner();//1.数字1/数字2=10/0 //2。当执行到num1/num2时,因为num2=0,程序会出现(抛出)异常ArithmeticException //3。当抛出异常时,程序退出并崩溃,下面的代码将不会被执行。//4.应该不会出现致命问题,导致整个系统崩溃。//5.我们可以使用异常处理机制来解决这个问题。//int RES=num 1/num 2;//如果程序员认为一段代码可能存在异常/问题,可以使用try-catch异常处理机制来解决//这样才能保证程序的健壮性//选择代码块-ctrl alt t-Select try-catch //6。如果执行异常处理,即使出现异常,程序也可以继续执行try { int RES=num 1/num 2;} catch(Exception e){//e . printstacktrace();System.out.println(异常原因= e . getmessage());//输出异常信息} System.out.println(程序继续运行.);}}

  

目录

 

  

异常介绍

包com.demo/* * * * @ 1.0版* @ auther Demo dragon */public class nullpointerexception { public static void main(string[]args){ string name 01=null;试试{ system . out . println(name 01 . length());} catch(Exception e){ throw new runtime Exception(e . getmessage());} String name02= sdasdsystem . out . println(name 02 . length());}}

 

  

常见的运行时异常

包com.demo/* * * * @ 1.0版* @ auther Demo dragon */public class exception 01 { public static void main(string[]args){ int num 1=10;int num 2=0;//Scanner();//1.数字1/数字2=10/0 //2。当执行到num1/num2时,因为num2=0,程序会出现(抛出)异常ArithmeticException //3。当抛出异常时,程序将退出并崩溃。在下面

 

  的代码就不在执行 //4. 大家想想这样的程序好吗? 不好,不应该出现了一个不算致命的问题,就导致整个系统崩溃 //5. java 设计者,提供了一个叫 异常处理机制来解决该问题// int res = num1 / num2; //如果程序员,认为一段代码可能出现异常/问题,可以使用try-catch异常处理机制来解决 //从而保证程序的健壮性 //将该代码块->选中->快捷键 ctrl + alt + t -> 选中 try-catch //6. 如果进行异常处理,那么即使出现了异常,程序可以继续执行 try { int res = num1 / num2; } catch (Exception e) { //e.printStackTrace(); System.out.println("出现异常的原因=" + e.getMessage());//输出异常信息 } System.out.println("程序继续运行...."); }}

 

  

3.数组下标越界异常

package com.demo;/** * @version 1.0 * @auther Demo龙 */public class ArrayIndexOutOfBoundException_ { public static void main(String[] args) { int []arr={5,6,8};// for (int i = 0; i < arr.length; i++) {// System.out.println(arr[i]);// } for (int i = 0; i <= arr.length; i++) { System.out.println(arr[i]); } }}

 

  

 

  

4.类型转换异常

package com.demo;/** * @version 1.0 * @auther Demo龙 */public class ClassCastException_ { public static void main(String[] args) { A b = new B(); //向上转型 B b2 = (B)b;//向下转型,这里是OK C c2 = (C)b;//这里抛出ClassCastException }}class A {}class B extends A {}class C extends A {}

 

  

 

  

5.数字格式不正确异常

package com.demo;/** * @version 1.0 * @auther Demo龙 */public class NumberFormatException_ { public static void main(String[] args) { String ch01="265450"; //将String转为int int num01=Integer.parseInt(ch01); System.out.println("num01="+num01); String ch02="Demo龙"; //将String转为int int num02=Integer.parseInt(ch02); System.out.println("num02="+num02); }}

 

  

 

  

异常处理流程

程序先执行 try 中的代码,如果 try 中的代码出现异常, 就会结束 try 中的代码, 看和 catch 中的异常类型是否匹配.如果找到匹配的异常类型, 就会执行 catch 中的代码,如果没有找到匹配的异常类型, 就会将异常向上传递到上层调用者.无论是否找到匹配的异常类型, finally 中的代码都会被执行到(在该方法结束之前执行).如果上层调用者也没有处理异常, 就继续向上传递,一直到 main 方法也没有合适的代码处理异常, 就会交给 JVM 来进行处理, 此时程序就会异常终止到此这篇关于Java详细讲解异常Exception的处理的文章就介绍到这了,更多相关Java Exception内容请搜索盛行IT以前的文章或继续浏览下面的相关文章希望大家以后多多支持盛行IT!

 

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: