共计 2523 个字符,预计需要花费 7 分钟才能阅读完成。
(1) 抽象父类 Fruit,包含以下属性和方法:
a) 一个 int 类型的成员变量 unitPrice,存放单价,单位为元 / 千克;
b) 一个 int 类型的成员变量 amount,存放重量,单位为千克。
c) 一个 double 类型的成员变量 discount,存放折扣,默认为 1;
d) 抽象方法 count(int unitPrice, int amount, double discount):double,计算水果的实际价格。
e) 抽象方法 display():void,显示水果的信息。
(2) 子类樱桃 Cherry,继承父类 Fruit,包含以下属性和方法:
a) 新增一个 String 类型的成员变量 origin,存放产地。默认为“山东”。
b) 构造方法 Cherry(origin, unitPrice, amount, discount),初始化樱桃的信息:产地、单价、折扣、重量。
c) 构造方法 Cherry(unitPrice, amount, discount),初始化樱桃的信息:单价、折扣、重量。
例如“樱桃: 产地 =,单价 =,折扣 =,重量 =”
d) 实现父类的抽象方法 display(),显示樱桃的信息,包括产地、名称、单价、折扣、重量。
e) 实现父类的抽象方法 count(int unitPrice, int amount, double discount):double,计算樱桃的具体金额。
(3) 子类芒果 Mango,继承父类 Fruit,包含以下属性和方法:
a) 新增一个 String 类型的成员变量 breed,存放品种。默认为“腰芒”。
b) 构造方法 Mango(breed, unitPrice, amount, discount),初始化芒果的信息:品种、单价、折扣、重量。
c) 构造方法 Mango(unitPrice, amount, discount),初始化芒果的信息:单价、折扣、重量。
d) 实现父类的抽象方法 display(),显示芒果的信息,包括品种、名称、单价、折扣、重量。
e) 实现父类的抽象方法 count(int unitPrice, int amount, double discount):double,计算芒果的具体金额。
外汇 IB http://www.fx61.com/ib.html
abstract class Fruit {
int unitPrice;
int amount;
double discount =1;
public abstract double count(int unitPrice,int amount,double discount);
public abstract void display();
}
class Cherry extends Fruit{
String origin =” 山东 ”;
Cherry(String origin,int unitPrice,int amount,double discount){
this.origin=origin;
this.unitPrice=unitPrice;
this.amount=amount;
this.discount=discount;
}
Cherry(int unitPrice,int amount,double discount){
this.unitPrice=unitPrice;
this.amount=amount;
this.discount=discount;
}
public void display(){
System.out.println(“ 产地:”+origin+” 名称:樱桃 ”+” 单价:”+unitPrice+” 折扣:”+discount+” 重量 ”+amount);
}
public double count(int unitPrice,int amount,double discount){
return unitPrice*amount*discount;
}
}
class Mango extends Fruit{
String breed=” 腰芒 ”;
Mango(String breed,int unitPrice,int amount,double discount){
this.breed=breed;
this.unitPrice=unitPrice;
this.amount=amount;
this.discount=discount;
}
Mango(int unitPrice,int amount,double discount){
this.unitPrice=unitPrice;
this.amount=amount;
this.discount=discount;
}
public void display(){
System.out.println(“ 品种:”+breed+” 名称:芒果 ”+” 单价:”+unitPrice+” 折扣:”+discount+” 重量 ”+amount);
}
public double count(int unitPrice,int amount,double discount){
return unitPrice*amount*discount;
}
}
public class TestFruit{
public static void main(String[] args) {
Fruit[] fruits = {new Cherry(“ 江苏 ”, 15, 2, 0.8), new Mango(12, 2, 0.95), new Cherry(28, 3, 0.7)};
System.out.println(“—————————-“);
for (int i = 0; i < fruits.length; i++)
fruits[i].display();
System.out.println(“—————————-“);
// 输出水果的总价钱
System.out.println(“ 总价钱为:” + sum(fruits));
}
static double sum(Fruit[] fruits){
double sum=fruits[0].count(15,2,0.8)+fruits[1].count(12,2,0.95)+fruits[2].count(28,3,0.7);
return sum;
}
}