java异常编程题
编写一个自定义的异常类,包含一个product( )方法(用于两个数相乘),如果product( )方法中的两个参数的乘积小于0,则抛出一个自定义异常类的对象,输出错误信息和乘积的值。另外要求product( )方法要用throws关键字声明该方法要抛出自定义异常和算术异常。
编写一个自定义的异常类,包含一个product( )方法(用于两个数相乘),如果product( )方法中的两个参数的乘积小于0,则抛出一个自定义异常类的对象,输出错误信息和乘积的值。另外要求product( )方法要用throws关键字声明该方法要抛出自定义异常和算术异常。
答案:import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
/*编写一个自定义的异常类,包含一个product( )方法(用于两个数相乘),
如果product( )方法中的两个参数的乘积小于0,则抛出一个自定义异常类的对象
,输出错误信息和乘积的值。另外要求product( )方法要
用throws关键字声明该方法要抛出自定义异常和算术异常。
*/
public class ExceptionDemo {
public static void main(String[] args) throws MyselfException ,IOException{
System.out.println("请输入第一个数");
String str1=(new BufferedReader(new InputStreamReader(System.in))).readLine();
System.out.println("请输入第2个数");
String str2=(new BufferedReader(new InputStreamReader(System.in))).readLine();
System.out.println("你输入了"+Double.parseDouble(str1)+Double.parseDouble(str2)+"这两个数");
product(Double.parseDouble(str1),Double.parseDouble(str2));
}
public static double product(double x, double y) throws MyselfException {// 异常声明
if ((x < 0 && y > 0) || (x > 0 && y < 0))// 异常抛出
/*
* 方法中的两个参数的乘积小于0,则抛出一个自定义异常类的对象
* ,输出错误信息和乘积的值,,,,,,,则必须有一个人乘数为负,且两个都不为0才会出负值
*/
{
System.out.println("乘级=" + x * y);
throw new MyselfException("出现两个参数的乘积小于0的异常");
}// 输出错误信息
else
System.out.println("没有异常");
System.out.println("乘级=" + x * y); // 乘积的值
return x * y;
}
}
class MyselfException extends Exception {
public MyselfException() {
}
public MyselfException(String message, Throwable cause) {
super(message, cause);
}
public MyselfException(String message) {
super(message);
}
public MyselfException(Throwable cause) {
super(cause);
}
}
上一个:Java怎么实现文件拷贝
下一个:java2编写程序 编写一个程序,将1-500间能同时被2,5,7整除的数输出出来。 请帮我编写完整的程序出来好吗