一、实验目的
掌握类的继承,方法的重写,super的使用;
二、实验项目内容(实验题目)
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*存款金额),返回他们的和。
另一个子类 重庆银行 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,设置利率为”,设置year为8.168。计算利息并输出。
三、源程序(实验步骤/实验过程/算法)
第一步创建
第二步在Bank里面设置年利率年限存款金额利息计算利息设置利率方法
package shiyanqi;
public class Bank {
double lilv;
// 年利率
int year;
// 年限
double money=80000;
// 存款金额
double lixi;
// 利息
double computerInterest() {
lixi=money*year*lilv;
return lixi;
}
// 计算利息的方法
public void setLilv(double lilv) {
this.lilv=lilv;
}
// 设置利率方法
}
第三步在子类 建设银行ConstructionBank继承Bank,并对父类中计算利息的方法computerInterest进行重写:
package shiyanqi;
public class ConstructionBank extends Bank {
double year;
// 年限
double daylilv=0.0001;
// 天利率
double computerInterest() {
String syear =""+year;
// 截取字符串的子串,年月日的截取
String array[]=syear.split("\\.");
super.year=Integer.parseInt(array[0]);
// 将年转换,整数年取出
int day=Integer.parseInt(array[1]);
// 将天转换,天取出
double yearlixi=super.computerInterest();
// 调用年利息
double daylixi=day*daylilv*money;
// 调用天利息
return daylixi + yearlixi;
// 天+年
}
// 对父类中计算利息的方法computerInterest()进行重写
}
第四步在子类 重庆银行ChongqingBank继承Bank,并对父类中计算利息的方法computerInterest进行重写:
package shiyanqi;
public class ChongqingBank extends Bank {
double year;
// 年限
double daylilv=0.0002;
// 天利率:
double computerInterest() {
String syear =""+year;
// 截取字符串的子串,年,天的截取
String array[]=syear.split("\\.");
super.year=Integer.parseInt(array[0]);
// 将年转换,整数年取出
int day=Integer.parseInt(array[1]);
// 将天转换,天取出
double yearlixi=super.computerInterest();
// 调用年利息
double daylixi=day*daylilv*money;
// 调用天利息
return daylixi + yearlixi;
// 天+年
}
// 对父类中计算利息的方法computerInterest()进行重写
}
第五步在主类中创建ConstructionBank的实例化对象cbank,将存款金额设置为80000,设置利率为0.035,设置year为8.168。计算利息并输出。
创建重庆银行的实例化对象cqBank,将存款金额设置为80000,设置利率为”,设置year为8.168。计算利息并输出。
package shiyanqi;
public class cbank {
public static void main(String[] args) {
// TODO Auto-generated method stub
ConstructionBank CBank =new ConstructionBank();
ChongqingBank CQBank = new ChongqingBank();
// 创建声明
CBank.lilv = 0.035;
CQBank.lilv =0.042;
// 两个银行的利率
CBank.year=8.168;
CQBank.year=8.168;
// 两个银行的年
double Jianlixi=CBank.computerInterest();
double Chonglixi=CQBank.computerInterest();
System.out.printf("建设银行%.2f\n",Jianlixi);
System.out.printf("重庆行%.2f\n",Chonglixi);
// 输出两个银行的利息
}
}