异常练习题(Java)-创新互联
问题描述:编写程序ExceptionDemo.iava,接收命令行的两个参数,要求不能输入负数,计算两个数相除的值。
要求: 对以下异常进行捕捉。
。数据类型不一致:NumberFormatException
。缺少命令行参数:ArrayIndexOutOfBoundsException
。除0 ArithmeticException
。输入负数:自定义异常ExceptionDefine
**提示:
·主类(ExceptionDemo)中定义异常方法(ecm)完成两数相除功能。
。在main()方法中使用异常处理语句进行异常处理。
。在程序中,自定义对应输入负数的异常类(ExceptionDefine)。
。运行时接受参数 20 10 //args[0]=“20”args[1]="10”。
。Interger类的static方法parselnt(String s)将s转换成对应的int值。
。如:int a=Interger.parselnt(“314");
。 //a=314 测试类
文章名称:异常练习题(Java)-创新互联
文章链接:http://lswzjz.com/article/gsigg.html
要求: 对以下异常进行捕捉。
。数据类型不一致:NumberFormatException
。缺少命令行参数:ArrayIndexOutOfBoundsException
。除0 ArithmeticException
。输入负数:自定义异常ExceptionDefine
**提示:
·主类(ExceptionDemo)中定义异常方法(ecm)完成两数相除功能。
。在main()方法中使用异常处理语句进行异常处理。
。在程序中,自定义对应输入负数的异常类(ExceptionDefine)。
。运行时接受参数 20 10 //args[0]=“20”args[1]="10”。
。Interger类的static方法parselnt(String s)将s转换成对应的int值。
。如:int a=Interger.parselnt(“314");
。 //a=314 测试类
public class ExceptionDemo {
public static void main(String[] args) {
//main方法接收的值在右上角编译按钮旁边的下拉框里的第一个选项
// 在构造与项目块里面的第二行里面输入传入的参数
int result= 0;
try {
int i=Integer.parseInt(args[0]);
//Integer是包装类(每一个基础的数据类型都有一个;类)
// 进行拆包:将Integer直接传给一个int变量
// 通过Integer将args[0]的类型变成Integer类型
int j=Integer.parseInt(args[1]);
result = ecm(i,j);
//定义一个ecm()方法
} catch (NumberFormatException e) {
System.out.println("数据转换错误!");
e.printStackTrace();
}catch (ExceptionDefine e) {
e.printStackTrace();
}catch (ArrayIndexOutOfBoundsException e){
System.out.println("参数太少了!");
}catch (ArithmeticException e){//捕捉除数,如果为零,就输出异常
System.out.println("除数为0了!");
}
System.out.println(result);
}
public static int ecm(int a,int b) throws ExceptionDefine{
int c=0;
if(a<0||b<0)//结果不能为负数,如果a,或b小于0抛出一个自定义异常
throw new ExceptionDefine("输入负数了,不行,重新输入!");
else
c=a/b;
return c;
}
}
自定义的异常类import javax.management.RuntimeOperationsException;
public class ExceptionDefine extends RuntimeException {
static final long serialVersionUID = -90745766939L;
//序列号,用于匹配抛出的异常,可以通过按ctrl再点击继承的异常父类,在里面复制
//空异常
public ExceptionDefine() {
}
//一个输出带有信息的异常,选择Massage String 异常
public ExceptionDefine(String message) {
//调用super里面的方法输出并打印异常的信息
super(message);
}
}
你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧
创新互联公司网站建设提供从项目策划、软件开发,软件安全维护、网站优化(SEO)、网站分析、效果评估等整套的建站服务,主营业务为成都网站设计、成都网站建设、外贸网站建设,app开发定制以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。创新互联公司深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!文章名称:异常练习题(Java)-创新互联
文章链接:http://lswzjz.com/article/gsigg.html