JAVA程序设计实验{继承与重写}

  • 实验内容

1、现在有一个银行类叫Bank

年利率 double lilv;

年限 int year;

存款金额 double money;

利息 double lixi;

计算利息的方法computerInterest(),返回利息。利息公式=存款金额*年限*利率

设置利率方法 setLilv(double lilv)

现在有一个子类 建设银行ConstructionBank继承Bank

年限 double year; (说明:这个年限不是整年,里面包含了天数,天数由小数点后的数字表示,最大就是0.364。比如 3.126,表示3年零126天。)

天利率:double daylilv=0.0001;

对父类中计算利息的方法computerInterest()进行重写:

比如年限是3.123,前面的整数年按照父类中的年利率方法计算[先将整数年取出,赋值给父类的year,即super.year=xxx,然后调用父类的计算利息的方法,super. computerInterest()],后面的123天按照子类中的天利率来计算(天数*daylilv*存款金额),返回他们的和。

String syear = ""+year;

String array[] = syear.split("\\.");

  super.year = Integer.parseInt(array[0]);

  int day = Integer.parseInt(array[1]);

另一个子类 重庆银行 ChongqingBank 继承Bank

年限 double year; (说明:这个年限不是整年,里面包含了天数,天数由小数点后的数字表示,最大就是0.364。比如 3.126,表示3年零126天。)

天利率:double daylilv=0.0002;

对父类中计算利息的方法computerInterest进行重写:

比如年限是3.123,前面的整数年按照父类中的年利率方法计算[先将整数年取出,赋值给父类的year,即super.year=xxx,然后调用父类的计算利息的方法,super. computerInterest()],后面的123天按照子类中的天利率来计算(天数*daylilv*存款金额),返回他们的和。

要求,在主类中创建ConstructionBank的实例化对象cbank,将存款金额设置为80000,设置利率为0.035,设置year为8.168。计算利息并输出。

创建重庆银行的实例化对象cqBank,将存款金额设置为80000,设置利率为0.042,设置year为8.168。计算利息并输出。

输出参考:

参考程序:

public class Bank {
    double lilv;
    int  year;
    double money=80000;
    double lixi;
    double computerlnterest(){
        lixi=money*year*lilv;
        return lixi;
    }
    public void setLilv(double lilv){
        this.lilv=lilv;
    }
}
class ConstructionBank extends Bank
{
     double year;
     double daylilv=0.0001;
     double computerlnterest()
     {
         String syear=""+year;
         String array[]=syear.split("\\.");
         super.year=Integer.parseInt(array[0]);
         int day=Integer.parseInt(array[1])      ;
         double yearlixi=super.computerlnterest();
         double daylixi=day*daylilv*money;
         return daylixi+yearlixi;
    }
}
class ChongqingBank extends Bank{
    double year;
    double daylilv=0.0002;
    double computerlnterest(){
        String syear=""+year;
        String array[]=syear.split("\\.");
        super.year=Integer.parseInt(array[0]);
        int day=Integer.parseInt(array[1]);
        double yearlixi=super.computerlnterest();
        double daylixi=day*daylilv*money;
        return daylixi+yearlixi;
    }
}
class zhulei{
    public static void main(String args[]){
        ConstructionBank cBank=new ConstructionBank();
        ChongqingBank cqBank=new ChongqingBank();
        cBank.lilv=0.035;
        cBank.year=8.168;
        cqBank.lilv=0.042;
        cqBank.year=8.168;
        double Conlixi=cBank.computerlnterest();
        double Cholixi=cqBank.computerlnterest();
        System.out.printf("建设银行利息为:%.2f\n",Conlixi);
        System.out.printf("重庆银行利息为:%.2f\n",Cholixi);
    }
}

 

  • 5
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值