189 8069 5689

JAVA异常-创新互联

JAVA异常
一、什么是异常
(1)定义:异常指的是Java程序在运行时可能出现的错误或者非正常的情况。
(2)异常的类型

创新互联是专业的岭东网站建设公司,岭东接单;提供成都做网站、网站设计,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行岭东网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!


(3)Throwable类常用的方法(获取异常信息)
 String getMessage()      返回异常的消息字符串
 String toString()             返回异常的简单信息描述
 void printStackTrace()    获取异常类和异常信息以及异常出现在程序中的位置,把信息输出到控制台
(4)运行时异常与编译时异常
  定义:在Exception 类中,除了RuntimeException类以外,其他子类都是编译时异常。
  处理编译时异常有两种方式:
  1.使用try....catch语句对异常进行捕获处理
  2.使用throws关键字声明抛出异常,由调用者对异常进行处理。
(5)常见的运行时异常
如图

二、异常处理及语法


(1)异常的产生及处理
如图:

public class Yichanglei {
    public static int  suanshu(int x, int y){
        int relust = x/y;
        return relust;
    }
    public static void main(String[] args) {
        int x=6,y=0;
          try {
              int sum = suanshu(x,y);
              System.out.println(sum);
          }
          catch (Exception e){
              System.out.println(e.getMessage());
              return;
          }finally {
              System.out.println("进入finslly代码块");
          }
        System.out.println("程序继续向下运行");
    }
}

(2)try....catch语句(用于捕获异常进行处理)
其语法格式如下:
try{
 代码块(可能出现异常的代码)
}catch(Exception e){
 代码块//对异常进行处理的代码
}
编写try....catch语句需要注意几点:
 1.try代码块是必须的。
 2.catch代码块可以有多个,但捕获父类异常的catch代码块必须位于捕获子类异常的catch代码块后面。
 3.catch代码块必须位于try代码块后面。


(3)finally语句
语法格式如下:
try{
  代码块
  }catch(Exception e){
 代码块
  } finally{
 代码块
}     
(4)抛出异常------需要捕获
java提供了throws关键字和throw关键字用于抛出异常。
throws关键字(用于有可能发生异常的方法)
语法格式如下:
修饰符 返回值类型 方法名(参数1,参数2,...)throws异常类1,异常类2,...{
方法体
}
throw关键字(用于方法体内)
使用throw关键字抛出异常的语法格式如下:
throw ExceptionInstance;

public class Throw1 {
    public static void printAge(int age) throws Exception{
        if(age<=0){
            throw new Exception("输入的年龄有误,必须是正数");
        }
        else {
            System.out.println("此人年龄为"+age);
        }
    }
    public static void main(String[] args) {
        try{
            printAge(-18);
        }catch (Exception e){
            System.out.println("捕获的异常信息为"+e.getMessage());
        }
    }
}

(5)自定义异常类(必须继承Exception类或者其子类。)
自定义异常类的实例代码如下:
class jichengException extends Exception{
public jichengException(){
super();
}
public jichengException(String message){

super(message);
}
}
使用自定义异常类,需要用到throw关键字。其在方法中声明异常实例对象
语法格式如下:
throw Exception 异常对象
示例:

class ExtendsException extends Exception{
    public ExtendsException(){
        super();
    }
    public ExtendsException(String message){
        super(message);
    }
}
public class Xunhuan {
    public static int jisuan(int x, int y)throws ExtendsException{
        if(y<0){
            throw new ExtendsException("除数是负数");
        }
        int result = x/y;
        return result;
    }
    public static void main(String[] args) {
          try{
              int result = jisuan(5,0);
              System.out.println(result);
          }catch (ExtendsException e){
              System.out.println("捕获的异常信息为"+e.getMessage());
          }
    }
}

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


网站标题:JAVA异常-创新互联
URL标题:http://cdxtjz.cn/article/cdhhhd.html

其他资讯