## 異常處理
~~~java
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class ExceptionClass {
public static void main(String[] args) throws Exception {//main方法也被稱之為主線程
String str = "2018/07/11 12:21:51";
System.out.println("**********程序開始運行**********");
age(17);
System.out.println("**********程序結束運行**********");
}
public static void age(int age) throws Exception {
if(age < 18) {
throw new Exception("您的年齡不合法");
} else {
System.out.println("您已進入vip房間");
}
}
public static void fun3(String str, String subStr) {
try {
if(str.indexOf(subStr) >= 0) {
System.out.println("存在子串");
} else {
System.out.println("不存在子串");
}
//int a = 10 / 0;//如果捕獲的異常種類和發生異常種類不能對應上,那么程序也會終止運行
} /*catch(NullPointerException e) {
//e.printStackTrace();//該方法可以在控制臺打印異常種類,錯誤信息和出錯位置
System.out.println(e.toString());//獲得異常的種類和錯誤信息
System.out.println(e.getMessage());//獲得錯誤信息
} catch(ArithmeticException e) {
e.printStackTrace();
}*/ /*catch(Exception e) {
System.out.println("aaa");//catch區域的內容,如果不出現異常,則不會執行
e.printStackTrace();
}*/ finally {
System.out.println("111");
}
}
/**
* 使用throws處理異常,程序發生異常,不存在try-catch的作用,會終止程序的運行
* @param str
* @throws ParseException
*/
public static void parseDate(String str) throws ParseException{//拋出異常,代表著我這個方法不處理我這邊拋出的異常,留給調用我方法的地方處理
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date date = sdf.parse(str);
date.getTime();
System.out.println(str);
}
/**
* 找錯誤手冊
* 1.程序出現異常之后,打開控制臺,查看打印的異常信息
* 2.找到出現異常的方法,在出現異常的地方附近打斷點
* 3.采用debug模式運行,進入調試模式,找到錯誤的根本原因
* 4.修改錯誤
*/
//斷點其實像把程序執行流卡在某個位置,等待人工確認運行
public static void exceptionStudy1() {
System.out.println("**************程序1開始運行***************");
System.out.println("**************程序1開始數學運算:"+ 10/2 +"***************");
System.out.println("**************程序1結束運行***************");
}
public static void exceptionStudy2() {
System.out.println("**************程序2開始運行***************");
System.out.println("**************程序2開始數學運算:"+ 10/0 +"***************");
System.out.println("**************程序2結束運行***************");
}
/**
* 如果異常不會發生,也就意味著處理了異常
* 判斷subStr是否存在str內
*/
public static void fun(String str, String subStr) {
if(str != null && subStr != null) {
if(str.indexOf(subStr) >= 0) {
System.out.println("存在子串");
} else {
System.out.println("不存在子串");
}
} else {
System.out.println("不合法字符串");
}
}
}
~~~
- 課程開始
- 第一課20191008
- 第二課20191009
- HTML
- CSS
- CSS第一課
- CSS第二課
- CSS第三課
- CSS第四課
- CSS第五課
- JavaScript
- Js第一課
- Js第二課
- Js第三課
- Js第四課
- Js第五課
- Js第六課
- Js第七課
- Js-事件模型
- Js-2019-10-31-標準庫
- Js-2019-11-01- 標準庫
- Js-2019-11-01-Json
- Js-2019-11-01-對象的創建
- Js-2019-11-04-this的使用
- Js-2019-11-05-storage與異常
- Js-2019-11-05-BOM與補充知識點
- Js-2019-11-06-正則表達式和計時器
- jQuery
- jQuery-2019-11-13-初識jQuery
- jQuery-2019-11-14-jQuery節點操作
- jQuery-2019-11-15-jQuery節點操作二
- jQuery-2019-11-16-jQuery效果與動畫
- Java
- Java-2019-11-27-變量直接量數據格式運算符
- Java-2019-11-28-流程控制
- Java-2019-12-02-數組
- Java-2019-12-04 面向對象
- Java-2019-12-05-封裝
- Java-2019-12-06-深入構造器
- Java-2019-12-09-繼承
- Java-2019-12-10-多態
- Java-2019-12-10-包裝類
- Java-2019-12-11-final修飾符
- Java-2019-12-11-包裝類
- Java-2019-12-11-接口
- java-2019-12-13-設計模式
- Java-2019-12-16-集合框架
- Java-2019-12-18-集合排序
- Java-2019-12-23-常用類學習
- Java-2019-12-25-異常處理
- Java-2019-12-31-內部類詳解