Java_异常
Posted HJ0101
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java_异常相关的知识,希望对你有一定的参考价值。
什么是异常?
异常就是"意外,例外"的意思,也就是非正常情况,Java中异常的本质就是程序上的错误;
如何处理异常?
Java提供了强大的异常处理机制,用过异常机制,我们可以更好的提升程序的健壮性;
异常处理机制为:抛出异常,捕捉异常
主要通过try catch finally throw throws 五个关键字处理异常
在Java中Throwable是所有异常类的父类,关系图如下:
Error:是程序无法处理的错误,表示运行程序中较为严重的错误,大多数错误与代码编写这执行的操作无关,是JVM(Java虚拟机)出现的问题;
Exception:是程序本身能够处理的异常,异常的处理通常都是指针对珍重异常的处理,主要包括:
checked exception:编译器要求必须处理的异常,否则无法正常都过编译,如 IOException
unchecked exception:编译器不要求强制处理的异常,可以正常编译,运行时提示异常信息,如 NullPointerException(空指针异常)
try-catch-finally(其中catch,finally至少存在一个)
public static void main(String[] args) { int a = 0; Scanner sc = new Scanner(System.in); try { System.out.println("======运算程序开始======"); System.out.println("请输入第一个整数:"); int m = sc.nextInt(); System.out.println("请输入第一个整数:"); int n = sc.nextInt(); System.out.println("它们的商是:" + m/n); }catch (Exception e) { System.out.println("程序错误!!"); } }
自定义异常类:
public class MyException extends Exception{ public MyException() { super("必须输入一个(100-999)的三位整数!"); } }
异常类的使用:
package com.task5; import java.util.Scanner; public class Test2 { // 输入一个100-999的数,判断它是不是水仙花数 public static void main(String[] args) throws MyException { System.out.println("请输入一个大于100的三位整数:"); Scanner sc = new Scanner(System.in); int input = sc.nextInt(); if(input < 100 || input > 1000) { throw new MyException(); } int a = input / 100; int b = input / 10 % 10; int c = input % 10; if (input == a * a * a + b * b * b + c * c * c) { System.out.print(input + "是水仙花数" + "\\n" + input + "=" + (a + "*" + a +"*"+ a) + "+" +(b+ "*"+ b +"*" +b) +"+"+ (c +"*"+ c +"*"+ c)); } else System.out.print(input + "不是水仙花数"); } }
以上是关于Java_异常的主要内容,如果未能解决你的问题,请参考以下文章