编写货箱类Cargo名字name属性货物重量weighe吨价格price万元吨保质期warranty天编写构造方法 CargoString name double weight double price int warra nty编写价格计算方法double getPriceint n如果n不大于保质期则返回货物价格反之返回0编写一个火车类Train其成员包含4节货箱补全相关代码使得nain方法可
public class Cargo { private String name; private double weight; private double price; private int warranty;
public Cargo(String name, double weight, double price, int warranty) {
this.name = name;
this.weight = weight;
this.price = price;
this.warranty = warranty;
}
public double getPrice(int n) {
if (n <= warranty) {
return weight * price;
} else {
return 0;
}
}
public String getName() {
return name;
}
public double getWeight() {
return weight;
}
public double getPrice() {
return price;
}
public int getWarranty() {
return warranty;
}
}
public class Train { private Cargo c1; private Cargo c2; private Cargo c3; private Cargo c4;
public Train(Cargo c1, Cargo c2, Cargo c3, Cargo c4) {
this.c1 = c1;
this.c2 = c2;
this.c3 = c3;
this.c4 = c4;
}
public double totalWeight() {
return c1.getWeight() + c2.getWeight() + c3.getWeight() + c4.getWeight();
}
public double originalPrice() {
return c1.getPrice() + c2.getPrice() + c3.getPrice() + c4.getPrice();
}
public double lossPrice(int n) {
double loss = 0;
if (c1.getWarranty() < n) {
loss += c1.getPrice(n - c1.getWarranty());
}
if (c2.getWarranty() < n) {
loss += c2.getPrice(n - c2.getWarranty());
}
if (c3.getWarranty() < n) {
loss += c3.getPrice(n - c3.getWarranty());
}
if (c4.getWarranty() < n) {
loss += c4.getPrice(n - c4.getWarranty());
}
return loss;
}
}
public class Progl { public static void main(String[] args) { Train t = new Train(new Cargo("鱼肉", 150, 8, 7), new Cargo("白菜", 100, 1.1, 10), new Cargo("荔枝", 100, 10, 3), new Cargo("大米", 200, 2, 180)); System.out.println("货物总重量:" + t.totalWeight() + "吨"); System.out.println("出发时货物总价格:" + t.originalPrice() + "万元"); System.out.println("发出5天后,损失货物价格:" + t.lossPrice(5) + "万元"); System.out.println("发出10天后,损失货物价格:" + t.lossPrice(10) + "万元"); }
原文地址: https://www.cveoy.top/t/topic/hbeJ 著作权归作者所有。请勿转载和采集!