1 package LS_15; 2 3 import java.text.SimpleDateFormat; 4 import java.util.Date; 5 6 public class TestError { 7 //Throwable类是java语言中所有错误的父类 8 //直接子类 9 //error:不应该捕获的错误 10 //常见的有 11 //StackOverflowError:栈溢出 12 //OutOfMemoryError:内存不够 13 14 15 //exception:异常.应该要去捕获它 16 //运行时异常:RunTimeException 17 // 其他都是编译时异常 18 19 20 21 22 //递归:自己调自己 23 public static int fun(int n){ 24 if(n==1) { 25 return 1; 26 } 27 return n*(n-1); 28 } 29 30 public static void main(String[] args) { 31 //System.out.println(TestError.fun(3)); 32 //运行异常 33 //int[] a = {1,3,4}; 34 //System.out.println(a[4]); 35 36 //编译异常 37 //int a = "sssss"; 38 39 //可能会产生异常 40 //String time = "2020-11-02"; 41 //SimpleDateFormat sdf = new SimpleDateFormat("yyyy-mm-dd"); 42 //Date date = sdf.parse(time); 43 //上面的解决方法是用try-catch抛出异常 44 45 //try{代码块1}catch{代码块2}finally{代码块3} 46 //有错输出代码块2 47 //可以有多个异常,只有一个异常 48 49 //throws:是声明异常,写在方法后面,可以写多个,用逗号隔开 50 51 52 53 } 54 }
1 package LS_15; 2 3 import java.text.ParseException; 4 import java.text.SimpleDateFormat; 5 import java.util.Date; 6 7 public class TestException { 8 public static void stringToDate(){ 9 String time = "2020-11-02"; 10 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-mm-dd"); 11 try { 12 Date date = sdf.parse(time); 13 } catch (ParseException e) { 14 e.printStackTrace(); 15 } 16 } 17 public static void main(String[] args) { 18 TestException.stringToDate(); 19 } 20 }