大家好,又见面了,我是你们的朋友全栈君。
异常是程序中的一些错误,但并不是所有的错误都是异常,并且错误有时候是可以避免的。
比如说,你的代码少了一个分号,那么运行出来结果是提示是错误 java.lang.Error;如果你用System.out.println(11/0),那么你是因为你用0做了除数,会抛出 java.lang.ArithmeticException 的异常。
异常发生的原因有很多,通常包含以下几大类:
这些异常有的是因为用户错误引起,有的是程序错误引起的,还有其它一些是因为物理错误引起的。-
要理解Java异常处理是如何工作的,你需要掌握以下三种类型的异常:
Java把异常当作对象来处理,并定义一个基类java.lang.Throwable
作为所有异常的超类。在Java API中已经定义了许多异常类,这些异常类分为两大类,错误Error
和异常Exception
。
编程实现输入一个正整数,求该数的阶乘的程序。要求能捕获输入数字格式异常(NumberFormatException),即当输入字符不是正整数时,能出现提示信息“输入数据格式不对,请重新输入一个正整数”。
package training8;
import java.util.InputMismatchException;
import java.util.Scanner;
public class MutilTest {
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("请输入一个正整数:");
Scanner sc=new Scanner(System.in);
int n=-1;
long sum=1;
try {
n=sc.nextInt();
} catch (Exception e) {
// TODO: handle exception
System.out.println("输入数据格式不对,请重新输入一个正整数\n");
}
//n=sc.nextInt();
sc.close();
if(n!=-1)
{
for(int i=1;i<=n;i++)
sum*=i;
System.out.printf("%d!=%d",n,sum);
}
sc.close();
}
}
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/144504.html原文链接:https://javaforall.cn