package J20250718.demo02_exception; /** * @author WanJl * @version 1.0 * @title Demo03 * @description * @create 2025/7/18 */ public class Demo03 { public static void main(String[] args) throws AgeException{ Person p=new Person(); //方案一:使用try...catch...finally 检测并处理并且执行必须要执行的代码 try{ p.setName(""); }catch (NameSizeException e){ //一般我们也可以正常打印错误信息.. e.printStackTrace();//把异常的错误信息打印到控制台 }finally { System.out.println("我是一定能会被执行的代码........"); } System.out.println("后面的代码要执行.....不能停"); //方案二:使用try...catch 检测并处理 try{ p.setName(""); }catch (NameSizeException e){ //一般我们也可以正常打印错误信息.. System.out.println(e.getMessage());//返回详细的信息 System.out.println(e.toString());//返回简要的信息 } //方案三:使用try...finally 只检测并且执行必须要执行的代码,不做任何处理,还是抛出 try{ p.setAge(-3); }finally { System.out.println("我一定会被执行...."); } // try{ // int[] arr={1,2,3}; // System.out.println(arr[3]); // }catch (ArrayIndexOutOfBoundsException e){ // //e.printStackTrace();//打印错误信息 // //System.out.println(e.getMessage()); // System.out.println(e.toString()); // } } }