这是函数题模板。这里写题目要求。计算圆的面积,其中PAI取3.14,圆半径为负数时应抛出异常,输出相应提示。
函数接口定义:
裁判测试程序样例:
在这里给出函数被调用进行测试的例子。例如:
import java.util.Scanner;
public class Main {
public static void main(String args[ ]) {
double s=0;
Scanner sr=new Scanner(System.in);
double r=sr.nextDouble();
sr.close();
try{
Circle c1=new Circle(r);
s = c1.area();
System.out.printf("%.1f",s);
}
catch (NumRangeException e){
e.print();
}
}
}
/* 请在这里填写答案 */
输入样例:
在这里给出一组输入。例如:
输出样例:
在这里给出相应的输出。例如:
错误:圆半径-3.0为负数
思路:
编写出Circle类,和自定义的NumRangeException异常类。主要完成double area() throws NumRangeException方法。
直接上代码:
class Circle{
double r;
Circle(){
}
Circle(double R){
r=R;
}
double area() throws NumRangeException{//这个方法可能抛出异常,需要用关键字throws,加上异常类型
if(r<0)
throw new NumRangeException(r);//半径为负数抛出异常
else
return r*r*3.14;
}
}
class NumRangeException extends Exception{//自定义异常类
double r;
NumRangeException(){
}
NumRangeException(double r){//构造方法
this.r=r;
}
void print(){
System.out.printf("错误:圆半径%.1f为负数",r);
}
}