异常

来源:互联网 发布:韩子高网络剧有下部吗 编辑:程序博客网 时间:2024/06/04 23:19
异常不可避免,
java解决异常的办法:try catch finally  throws throw
解决异常:抓,抛
try 语句块用来对异常代码进行捕获
catch 对产生的异常进行对应的处理
finally 不管是否发生异常,代码块都要执行
java异常,产生异常的时候java会对应异常类型生成一个异常的对象
当try捕获到异常后,catch会拿到异常的对象和catch的后面的异常类型进行对比
如果对比成功,执行这个catch,如果对比失败,交给下一个catch块继续对比(有下一个catch的情况下)
五个常见的异常:NullPointerException 空指针异常,ArrayIndexOutOfBoundsException 数组下标越界异常,ClassNotFoundException 找不到类异常, FileNotFoundException 找不到文件异常,NetException ,SQLException SQL异常 IOException io异常NumberFormatException 数字格式化异常
常见的5个包:io lang util net sql 

在try catch finally语句中,不管return在什么地方,在执行return之前都会调用finally代码块;

 编写程序接收用户输入分数信息,如果分数在0—100之间,输出成绩。如果成绩不在该范围内,抛出异常信息,提示分数必须在0—100之间。

要求:使用自定义异常实现

 

package com.sxt;import java.util.Scanner;public class MathDome{public static void main(String[] args) {Scanner sc=new Scanner(System.in);System.out.println("请输入数字");try {int a = sc.nextInt();if(a<=100&&a>=1){System.out.println(a);}else{throw new Exception("必须输入0-100之间的数");}}catch (Exception e) {System.out.println(e.getMessage());}finally{sc.close();}}}

写一个方法void isTriangle(int a,int b,int c),判断三个参数是否能构成一个三角形, 如果不能则抛出异常IllegalArgumentException,显示异常信息 “a,b,c不能构成三角形”,如果可以构成则显示三角形三个边长,在主方法中得到命令行输入的三个整数, 调用此方法,并捕获异常。

package com.sxt;import javax.swing.plaf.basic.BasicSliderUI.TrackListener;/** * 三角形 * @author Administrator */public class Triangle {public void isTriangle(int a,int b,int c){try {if(a+b>c&&a+c>b&&b+c>a){System.out.println(a+":"+b+":"+c);}else{throw new IllegalArgumentException();}} catch (IllegalArgumentException e) {System.out.println("a,b,c不能构成三角形");}}public static void main(String[] args) {Triangle a=new Triangle();a.isTriangle(1, 1, 1);}}





原创粉丝点击