我是方法重写的新手,我不确定我在这里做错了什么。 Eclipse不会告诉我有任何错误,所以当我运行这个ItemTest时,我没有得到任何输出。 只是空白控制台。
项。java
public class Item {
public String name;
public double price;
public int quantity;
public Item(String i, double p, int q) {
this.name = i;
this.price = p;
this.quantity = q;
}
public double totalPrice() {
return price * quantity;
}
}
saleItem.java
public class SaleItem extends Item{
public double sale;
public SaleItem(String i, double p, int q, double s) {
super(i, p, q);
this.sale = s;
}
public double totalPrice() {
return quantity * price * sale;
}
}
useditem.java
public class UsedItem extends Item{
public int old;
public UsedItem(String i, double p, int q, int o) {
super(i, p, q);
this.old = o;
}
public double totalPrice() {
return quantity * price * (1 - old / 100);
}
}
最后是ItemTest.java。
public class ItemTest {
public static void main(String[] args) {
Item i1 = new Item("a", 2.1, 3);
SaleItem i2 = new SaleItem("q", 3.1, 3, 5.5);
UsedItem i3 = new UsedItem("e", 4.1, 3, 5);
i1.totalPrice();
i2.totalPrice();
i3.totalPrice();
}
}
你什么都没印。 请按以下步骤操作:
public class ItemTest {
public static void main(String[] args) {
Item i1 = new Item("a", 2.1, 3);
SaleItem i2 = new SaleItem("q", 3.1, 3, 5.5);
UsedItem i3 = new UsedItem("e", 4.1, 3, 5);
System.out.println(i1.totalPrice());
System.out.println(i2.totalPrice());
System.out.println(i3.totalPrice());
}
}
你不能调用任何东西来导致输出。 将你的主线改为:
System.out.println(i1.totalPrice());