当前位置: 首页 > news >正文

深圳网站制作培训百度优化教程

深圳网站制作培训,百度优化教程,中小企业erp软件排名,百度关键词怎么排名文章目录1. 异常概述2. JVM 的默认处理方案3. 异常处理之 try...catch4. Throwable 的成员方法5. 编译异常和运行异常的区别6. 异常处理之 throws7. 自定义异常8. throws 和 throw 的区别1. 异常概述 异常就是程序出现了不正常的情况。 ① Error:严重问题&#xff…

文章目录

    • 1. 异常概述
    • 2. JVM 的默认处理方案
    • 3. 异常处理之 try...catch
    • 4. Throwable 的成员方法
    • 5. 编译异常和运行异常的区别
    • 6. 异常处理之 throws
    • 7. 自定义异常
    • 8. throws 和 throw 的区别

1. 异常概述

异常就是程序出现了不正常的情况。

在这里插入图片描述

① Error:严重问题,不需要处理;
② Exception:称为异常类,它表示程序本身就可以处理的问题;
③ RuntimeException:在编译期是不检查的,出现问题后,需要我们回来修改代码;
④ 非 RuntimeException:编译期就必须处理的,否则程序不能通过编译,就更不能正常运行了。

2. JVM 的默认处理方案

如果程序出现了问题,我们没有做任何处理,最终 JVM 会做默认的处理。
(1)把异常名称、异常原因以及异常出现的位置等信息输出在了控制台;
(2)程序从此处就停止执行。

3. 异常处理之 try…catch

如果程序出现了问题,我们需要自己来处理,有两种方案:
① try…catch…
② throws

//格式
try {//可能出现异常的代码
} catch (异常类名 变量名) {//异常的处理代码
}

执行流程:
(1)程序从 try 里面的代码开始执行;
(2)出现异常,会自动生成一个异常类对象,该异常对象将被提交给 Java 运行时系统;
(3)当 Java 运行时系统接收到异常对象时,会到 catch 中去找匹配的异常类,找到后进行异常的处理;
(4)执行完毕后,程序还可以继续往下执行。

try {int[] arr = {1, 2, 3};System.out.println(arr[3]);
} catch (ArrayIndexOutOfBoundsException e) {System.out.println("你访问的数组索引不存在!");
}

4. Throwable 的成员方法

Throwable 是所有异常的祖宗类。

Throwable 的成员方法如下:

在这里插入图片描述

try {int[] arr = {1, 2, 3};System.out.println(arr[3]);} catch (ArrayIndexOutOfBoundsException e) {System.out.println(e.toString());}

在这里插入图片描述
e.printStackTrace() 方法的输出信息是最全的,所以也是我们经常使用的!

5. 编译异常和运行异常的区别

Java 中的异常被分为两大类:编译时异常和运行时异常,也被称为受检异常和非受检异常,所有的 RuntimeException 类及其子类被称为运行时异常,其他的异常都是编译时异常。

编译时异常:必须显示处理,否则程序就会发生错误,无法通过编译;
运行时异常:无需显示处理,也可以和编译时异常一样处理。

6. 异常处理之 throws

虽然我们通过 try…catch…可以对异常进行处理,但是并不是所有的情况我们都有权限进行异常的处理。也就是说,有些时候可能出现的异常是我们处理不了的,这个时候该怎么办呢?
针对这种情况,Java 提供了 throws 的处理方案。

throws 异常类名;

注意这个格式是跟在方法的括号后面的!

public static void show() throws ArrayIndexOutOfBoundsException {int[] arr = {1, 2, 3};System.out.println(arr[3]);
}

① 编译时异常必须要进行处理,使用 try…catch… 或 throws,如果采用 throws 这种方案,它仅仅是抛出异常,并没有做实际的操作,将来谁调用谁就得单独去处理;
② 运行时异常可以不处理,出现问题后,需要我们回来修改代码。

7. 自定义异常

//格式
public class ScoreException extends Exception {public ScoreException() {}public ScoreException(String message) {super(message);}
}
//ScoreException.javapackage com.an;public class ScoreException extends Exception {public ScoreException() {}public ScoreException(String message) {super(message);}
}
//Teacher.javapackage com.an;public class Teacher {public void checkScore(int score) throws ScoreException {if (score < 0 || score > 100) {throw new ScoreException("你给的分数有误,分数应该在0~100之间!");} else {System.out.println("分数正常!");}}
}
//Test.java//Test.javapackage com.an;import java.util.Scanner;public class Test {public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.println("请输入分数:");int score = sc.nextInt();Teacher t = new Teacher();try {t.checkScore(score);} catch (ScoreException e) {e.printStackTrace();}}
}

在这里插入图片描述
在这里插入图片描述

8. throws 和 throw 的区别

throws:
① 用在方法声明后面,跟的是异常类名;
② 表示抛出异常,由该方法的调用者来处理;
③ 表示出现异常的一种可能性,并不一定会发生这些异常。

throw:
① 用在方法体内,跟的是异常对象名;
② 表示抛出异常,由方法体内的语句处理。

http://www.yayakq.cn/news/996151/

相关文章:

  • 宿迁做网站需要多少钱深夜免费软件app下载
  • 个人网站备案材料情女照片做杯子网站
  • 南宁网站建站公司电商网站设计公司优选亿企邦
  • 网站建设需要保存什么智能建造技术专业学什么
  • 滨州做网站如何自己做网站的优化推广
  • 香蜜湖网站建设做网站用平板吗
  • 网站备案查询不出来东莞企业自助建站系统
  • 建设企业网站收费7一12岁手工科技小制作
  • 53套网站源码外贸原单童装哪个网站做
  • 提供中小企业网站建设app科技网站建设
  • 上海网站建设与设计公司好网站前端制作费用
  • 中国空间站合作国家名单网页模板素材下载
  • 做网站可以自由职业吗网址大全免费下载安装
  • 湖北网站建设php免费网站建设
  • 百度站长联盟android开发技术
  • 车辆管理网站开发百度域名排行
  • 网站全局搜索如何做百度竞价推广是什么
  • 网站程序上传教程网站设计便宜
  • 个人网站做微擎河南平价的seo整站优化定制
  • 在线免费域名网站解析宣城市住房和城乡建设局网站首页
  • 怎样用html制作网站Wordpress个人套餐
  • 外贸网站建设优化怎么样才能申请网址
  • 网站建设前台功能设计与实现网站标签怎么做
  • 重庆建设厅网站首页广告设计主要学什么内容
  • 如何推广外贸型网站用php做网站教程
  • 好看的旅游网站模板下载建设工程竣工规划局网站
  • 网站需要数据库吗沧州市有建网站的吗
  • 网站页面设计版权抖音电商
  • 深圳品牌网站建设公司有哪些适合发朋友圈的营销广告
  • 手机网站静态动态织梦怎么做中英文网站