java 19 - 10 自定义异常的实现和测试

 1 /*
 2  * java不可能对所有的异常情况都考虑到,所以,在实际的开发中,我们可能需要自己定义异常。
 3  * 而我们自己随意的写一个类,是不能作为异常类来看的,要想你的类是一个异常类,就必须继承自Exception或者RuntimeException
 4  *
 5  * 两种方式:
 6  * A:继承Exception  编译期异常
 7  * B:继承RuntimeException    运行期异常
 8  */
 9 public class MyException extends Exception {
10     //无参构造
11     public MyException() {
12     }
13     //带参构造
14     public MyException(String message) {
15         super(message);//调用父类Throwable的方法,以便出现异常的时候能提示异常的具体原因
16     }
17 }
18
19 // public class MyException extends RuntimeException {
20 //
21 // }
1 public class Teacher {
2     public void check(int score) throws MyException {
3         if (score > 100 || score < 0) {
4             throw new MyException("分数必须在0-100之间");
5         } else {
6             System.out.println("分数没有问题");
7         }
8     }

测试类:

 1 import java.util.Scanner;
 2
 3 /*
 4  * 自定义异常测试类
 5  */
 6 public class StudentDemo {
 7     public static void main(String[] args) {
 8         Scanner sc = new Scanner(System.in);
 9         System.out.println("请输入学生成绩:");
10         int score = sc.nextInt();
11
12         Teacher t = new Teacher();
13         try {
14             t.check(score);
15         } catch (MyException e) {
16             e.printStackTrace();
17         }
18     }
19 }
时间: 2024-10-06 22:29:24

java 19 - 10 自定义异常的实现和测试的相关文章

Java基础10:全面解读Java异常

Java基础10:全面解读Java异常 为什么要使用异常 首先我们可以明确一点就是异常的处理机制可以确保我们程序的健壮性,提高系统可用率.虽然我们不是特别喜欢看到它,但是我们不能不承认它的地位,作用. 在没有异常机制的时候我们是这样处理的:通过函数的返回值来判断是否发生了异常(这个返回值通常是已经约定好了的),调用该函数的程序负责检查并且分析返回值.虽然可以解决异常问题,但是这样做存在几个缺陷: 1. 容易混淆.如果约定返回值为-11111时表示出现异常,那么当程序最后的计算结果真的为-1111

菜鸟学Java(十九)——WEB项目测试好帮手,Maven+Jetty

做WEB开发,测试是一件很费时间的事情.所以我们就应该用更简单.更快捷的方式进行测试.今天就向大家介绍一个轻量级的容器--jetty.j今天说的etty是Maven的一个插件jetty-maven-plugin,与Maven配合起来使用非常的方便,它的配置也非常的简单,下面我们就看看它怎么用吧! 在pom.xml 文件的<project>标签下加入如下代码: <build> <plugins> <plugin> <groupId>org.mort

【转1】Appium 1.6.3 在Xcode 8, iOS 10.2(模拟器)测试环境搭建 经验总结

Appium 1.6.3 在Xcode 8, iOS 10.2(模拟器)测试环境搭建 经验总结 关于 Appium 1.6.3 在Xcode 8, 10.2 的iOS模拟器上的问题很多,本人也差点放弃,最终成功运行,确实不容易,故此写篇文章,供大家参考,让大家少走弯路.一. 安装Appium(1) 先安装node-js,然后通过node-js命令安装 Appium     在https://nodejs.org/en/download/ 下载 macOS Installer (.pkg) 安装,

几周内搞定Java的10个方法

不要将Java与JavaScript弄混了,Java的目标是“一次编译,到处调试”(呃,不对,是“到处运行”).简单来说,就是Java程序可以直接在任何设备上运行. Java语言是什么? 不管我们是否意识到,实际上我们基本每天都在与Java打交道.在浏览网页时,可能会弹出一个提示,要求必须安装Java才能继续浏览.这种情况一般发生在使用flash或者是通过某种方式将flash组件集成到核心系统的站点. Java并不是那种通常在新电脑上直接下载下来就能用的程序.我不能确定有没有操作系统将Java作

【Java二十周年】我比Java大10岁

1991年,我7岁,刚刚步入学堂不到半年.而计算机在那个年代也是一个新奇的事物.可就在那样的环境中,Java已经有了萌芽.那一年,SUN公司启动绿色计划,打算发展一种可以在任何消费电子产品上运行的软件.但由于C++自身有很多不足,所以项目组决定自行开发一种新的语言Oak.最初,Oak应用于机顶盒,但是在当时市场不成熟的情况下,项目失败了.但Oak却得到了SUN领导的赏识,于是: 1995年3月23日,在对Oak进行小规模改造后Java语言诞生了,并广泛应用于互联网领域. 一年后,在1996年,我

Ubuntu 19.10 发布 | 云原生生态周报 Vol. 24

作者 | 木苏.进超.冬岛.元毅.心水.衷源 业界要闻 1.云原生编程语言 Pulumi 1.0 pulumi ,一款中立的开源云开发平台,Pulumi 支持多语言.混合云环境.完全可扩展.初期支持 JavaScript.TypeScript.Python 和 Go 语言,支持 AWS.Azure.GCP 云平台,另外还支持所有兼容 Kubernetes 的公有云.私有云和混合云.Pulumi 实现了一种单一.一致的编程模型,一组编程工具,可管理所有以上环境,丰富的生态系统支持大量可复用的包.1

Unix 网络编程卷一源码编译踩坑记录 ubtutu 19.10

在阅读unpv1时运行源代码的环境配置,这里简单记录一下 源代码里的README 写得挺详细的,但是在Linux 系统的下还是没办法直接编译通过的, 这里我使用的是ubuntu 19.10(在腾讯云ubuntu server 18.04.1也测试通过) 以下是简单的步骤: 1.下载源码并解压 2.解压源代码后得到unpv13e, 3.开始编译 cd unpv13e ./configure cd lib make cd ../libfree make 这时报错:inet_ntop.c: In fu

java进阶10 GUI图形界面 布局管理器之FlowLayout GridLayout

先说说FlowLayout 流式布局管理器. 效果 这是当第一行显示不下,才转到第二行的. 看看代码 package Frame; import java.awt.BorderLayout; import java.awt.FlowLayout; import javax.swing.JButton; import javax.swing.JFrame; public class MyLayout{ JFrame frame; public MyLayout(JFrame frame) { //

Eclipse调试Java的10个技巧

原文地址: http://www.oschina.net/question/82993_69439 在看这篇文章前,我推荐你看一下Eclipse 快捷键手册,我的eclipse版本是4.2 Juno. 先提三点 不要使用System.out.println作为调试工具 启用所有组件的详细的日志记录级别 使用一个日志分析器来阅读日志 1.条件断点 想象一下我们平时如何添加断点,通常的做法是双击行号的左边.在debug视图中,BreakPoint View将所有断点都列出来,但是我们可以添加一个bo