JAVA中throw和throws的区别

JAVA中throw和throws的区别,第1张

* 异常的处理,在有的时候,没有权限使用try...catch去处理异常
 * 只能使用throws,抛出异常
 * 
 * 
 * 针对抛出异常,
 * 编译时期异常和运行时期异常的使用:
 * 
 * 编译时期:调用者必须处理的;
 * 运行时期异常:不需要处理
 * 
 * 
 * 抛出:
 * 面试题:
 * 
 *             throws和throw的区别?
 * 
 *     处理异常的时候:开发中使用try...catch...finally:标准格式
 *                 自己在写程序过程中,为了处理方便:throws
 * 1)位置不同
 *      throws是在方法声明上抛出
 *      throw:是在方法体(语句)中抛出 
 * 2)两个关键字后面的跟的类型不一样
 *         throws后面跟的是异常类名,而且可以跟多个异常类名,中间使用逗号隔开;
 *         throw后面跟的异常对象名(匿名对象),throw new xxxException();不能跟多个异常对象,只能跟一个!
 * 
 * 3)throws表示产生异常的一种可能性!
 *      throw:表示产生异常的一种肯定性!
 * 
 * 4)throws抛出的异常由他的调用者进行处理
 *   throw:方法中的语句进处理(加入一些逻辑判断)

public class ExceptionDemo {

	public static void main(String[] args)  {
		System.out.println("今天天气不错");
		
			//调用者必须显示处理
			try {
				method1() ;
			} catch (ParseException e) {
				e.printStackTrace();
			}
		
		System.out.println("打起精神...");
		
		//调用者不需要显示处理
		method2() ;
	}

	private static void method2() throws ArithmeticException {
		
		int a  = 10 ;
		int b = 0 ;
		if(b!=0) {
			System.out.println(a/b);//运行时期异常
		}else {
			throw new ArithmeticException() ; //跟的异常对象名:具体异常具体对待
			//下面错误的
			//throw new ArithmeticException(),new ArrayIndexOutOfBoundsException();
		}
		
	}

 

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/734956.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-27
下一篇 2022-04-27

发表评论

登录后才能评论

评论列表(0条)

保存