JAVA关于抛出异常的题

来源:百度知道 编辑:UC知道 时间:2024/06/02 18:34:43
很简单的一个题`会的做下
为一家保险公司编写程序InsuranceCalculater,用2009年减去某人的出生年份来计算其年龄。然后用年龄减去16来计算其驾驶年龄。驾驶年龄少于4的人,每年需支付1000元的保险额,其他人支付600元。如果未满16岁,则无需保险,而应引发异常(年龄太小,无需保险!)

import java.text.SimpleDateFormat;
import java.util.*;
public class InsuranceCalculater {
private final int mbYear=1900;
private final int age_=16;
private void isvaild(int age) throws IsVaildAgeException{
if(age<age_){
throw new IsVaildAgeException();
}
}
private int getAge(int birthYear){
int tempage=0;
SimpleDateFormat dateformat = new SimpleDateFormat("yyyy");
int year=Integer.parseInt(dateformat.format(new Date()));
if(birthYear>mbYear){
tempage=year-birthYear;
}
return tempage>0?tempage:0;
}

public int baoxian(int birthYear){
int age=getAge(birthYear);
int baoxian=0;
try{
isvaild(age);
if((age-age_)<4){
baoxian=1000;
}else{
baoxian=600;
}
}catch(IsVaildAgeException e){
e.printStackTrace();
}finally{
return baoxian;<