关于异常处理--第一个代码中Date date=sdf1.parse(day);一定要异常处理才能运行 而第二个代码中int c=a/b;也有可能出现异常可是不用异常处理也能运行 这是为什么????

来源:1-3 Java中通过案例学习 try...catch...finally

慕粉4401746

2017-02-07 22:17

package other_class;
import java.util.*;
import java.text.SimpleDateFormat;
import java.text.ParseException;
public class Time {
	public static void main(String[] args)  {
		// TODO Auto-generated method stub
Date d=new Date();
System.out.println(d);
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String today=sdf.format(d);
System.out.println(today);
String day="1997年07月16日16时16分16秒";
SimpleDateFormat sdf1=new SimpleDateFormat("yyyy年MM月dd日HH时mm分ss秒");

Date date=sdf1.parse(day);//这里一定要异常处理才能运行

//Date date;
//try {
//	date = sdf1.parse(day);
//	System.out.println(date);
//} catch (ParseException e) {
//	e.printStackTrace();
//}
	}

}
package other_class;
import java.util.Scanner;
public class shang {

	public static void main(String[] args) {
Scanner scan=new Scanner(System.in);
int a=scan.nextInt();
int b=scan.nextInt();

int c=a/b;//这里有可能异常为什么不用异常处理也能运行

System.out.println(c);
//try{int c=a/b;
//System.out.println(c);
//}catch(Exception e){
//	e.printStackTrace();
//}
}}

第一个代码中Date date=sdf1.parse(day);一定要异常处理才能运行

而第二个代码中int c=a/b;也有可能出现异常可是不用异常处理也能运行

这是为什么????

写回答 关注

1回答

  • ziom
    2017-02-08 06:59:44
    已采纳

    Exception分为两类:一种是CheckedException,一种是UncheckedException。这两种Exception的区别主要是CheckedException需要用try...catch...显式的捕获,而UncheckedException不需要捕获

    慕粉4401...

    非常感谢!

    2017-02-08 16:01:36

    共 1 条回复 >

Java入门第三季

Java中你必须懂得常用技能,不容错过的精彩,快来加入吧

409792 学习 · 4340 问题

查看课程

相似问题