Java自定义抛出异常简单实例
/**
* 自定义异常
*Java中定义的异常有限,如果想描述程序中特有的异常情况,就需要自定义异常。
*summary:
* 1、在Java中允许用户自定义异常,但自定义的异常类必须继承自Exception或其子类。
* 2、throw关键字用于在方法中声明抛出异常的实例对象,其语法格式如下:
* throw Exception异常对象
*/
class MyException extends Exception {
private int number;
public MyException(String message) {
super(message);
}
public MyException(String message, int number) {
super(message);
this.number = number;
}
public int getNumber() {
return number;
}
}
public class Example19 {
public static void main(String[] args) {
try {
divide(20, 0);
} catch (MyException my) {
System.out.println("你给的除数是:" + my.getNumber() + ",而我们要求是:"+ my.getMessage());
}
}
public static int divide(int a, int b) throws MyException {
if (b == 0) {
throw new MyException("除数不能为零", b);
} else {
return a / b;
}
}
}
/**
* 自定义异常类
* (1)编写自定义异常类MyException,该类继承自Exception类,
* 类中只有含一个字符串参数msg的构造方法,
* 构造方法中只有一条语句super(msg)——调用父类的构造方法。
* (2)编写自定义类person,类中只有两个私有的变量,一个是字符串类型的name,
* 另一个是整型变量age;有两个公有方法getAge()和setAge(int age),
* 其中setAge(int age)的功能是把参数age的值赋值给类person中的变量age
* (但要求age>0,否则抛出自定义异常MyException类的对象);getAge()方法返回变量age的值。
* (3)定义一个类 Test4 ,要求在类Test4中的main方法中类person的对象,
* 先调用setAge(int age)方法,再调用getAge()方法。
*/
class MyException extends Exception{
public MyException(String msg){
super(msg);
}
}
class Person{
private String name;
private int age;
public int getAge() {
return age;
}
public void setAge(int age) throws MyException{
if(age>0){
this.age = age;
}else{
throw new MyException("年龄必须大于0");
}
}
}
class Test4{
public static void main(String[] args) throws MyException {
Person p1=new Person();
p1.setAge(1);
System.out.println("年龄为"+p1.getAge());
}
}
原文作者:zj12november
原文地址: https://blog.csdn.net/zhaojie911272507/article/details/107185706
本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
原文地址: https://blog.csdn.net/zhaojie911272507/article/details/107185706
本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
相关文章