Java 练习(自定义异常类)
2023-09-27 14:26:01 时间
编写应用程序 EcmDef.java,接收命令行的两个参数, 要求不能输入负数,计算两数相除。对数据类型不一致(NumberFormatException)、缺少命令行参数(ArrayIndexoutOfBoundsException.除0(ArithmeticException)及输入负数(EcDef自定义的异常)进行异常处理。
提示:
(1)在主类(EcmDef)中定义异常方法(ecm)完成两数相除功能。
(2)在main()方法中使用异常处理语句进行异常处理。
(3)在程序中,自定义对应输入负数的异常类(EcDef)。
(4)运行时接受参数java EcmDef 20 10 //args[0]="20" args[1]="10"
(5)Interger类的static方法parseInt(String s)将s转换成对应的int值。
如:int a=Interger.parseInt("314"); //a=314;
EcmDef.java
package com.klvchen.exer;
public class EcmDef {
public static void main(String[] args) {
try {
int i = Integer.parseInt(args[0]);
int j = Integer.parseInt(args[1]);
int result = ecm(i,j);
System.out.println(result);
}catch(NumberFormatException e) {
System.out.println("数据类型不一致");
}catch(ArrayIndexOutOfBoundsException e) {
System.out.println("缺少命令行参数");
}catch(ArithmeticException e) {
System.out.println("除0");
}catch(EcDef e) {
System.out.println(e.getMessage());
}
}
public static int ecm(int i, int j) throws EcDef {
if(i < 0 || j < 0) {
throw new EcDef("分子或分母为负数了!");
}
return i/j;
}
}
相关文章
- 【Java集合】ArrayList源码分析
- Java反射机制清空字符串导致业务异常分析
- 这几种Java异常处理方法,你会吗?
- Druid执行多条SQL异常:Cause: java.sql.SQLException: sql injection violation, multi-statement not allow
- Java 基础【17】 异常与自定义异常
- 面试 Java 高级后端开发,要准备哪些知识点?
- Java异常处理 10 个最佳实践
- Java进阶:企业级实战!Springboot集成自定义异常类
- Java开发还不会这些?如何安装java运行环境
- java自定义异常
- Java中关于异常处理的10个最佳实践
- Java+7入门经典 -2 数据
- java 自定义异常输出信息(使用构造器)
- Java 基础(自定义异常)
- Java 练习(Object 练习一)
- Java 基础( == 和 equals 的区别)
- 用Java实现HTTP Multipart的服务端和客户端
- 第二十二章:Java编程之异常处理机制
- 已解决java: 无法访问org.springframework.boot.SpringApplication异常的正确解决方法,亲测有效!!!
- 1081 检查密码(JAVA)
- 在java程序中实现发送邮件的功能
- 类型转换异常处理java.lang.RuntimeException
- 论Java的ArrayList.add(e)和C++的vector.push_back(e)的区别