三、定义商品类Goods,包含单价 unitPrice和数量account两个属性,方法包括构造方法和价格计算方法totalPriceO。 定义接口VipPrice,包含 DISCOUNT属性和reducedPriceO方法,使VIP会 员享受商品价格8.5折待遇。 定义服装子类Clothing,它继承商品类Goods,并实现接口VipPrice,并有 服装样式style属性、构造方法和toString方法。 编写一个测试类,创建一种服装(180,2,“女装”),利用toString方法输出服装信息。
时间: 2024-03-05 12:55:03 浏览: 187
好的,您的第一个问题是关于Java编程的。以下是回答:
1. 商品类Goods的定义如下:
```java
public class Goods {
private double unitPrice;
private int account;
public Goods(double unitPrice, int account) {
this.unitPrice = unitPrice;
this.account = account;
}
public double totalPrice() {
return unitPrice * account;
}
}
```
2. 接口VipPrice的定义如下:
```java
public interface VipPrice {
double DISCOUNT = 0.85;
double reducedPrice();
}
```
3. 服装子类Clothing的定义如下:
```java
public class Clothing extends Goods implements VipPrice {
private String style;
public Clothing(double unitPrice, int account, String style) {
super(unitPrice, account);
this.style = style;
}
@Override
public double reducedPrice() {
return totalPrice() * DISCOUNT;
}
@Override
public String toString() {
return "Clothing{" +
"unitPrice=" + unitPrice +
", account=" + account +
", style='" + style + '\'' +
", totalPrice=" + reducedPrice() +
'}';
}
}
```
4. 测试类的代码如下:
```java
public class Test {
public static void main(String[] args) {
Clothing clothing = new Clothing(180, 2, "女装");
System.out.println(clothing.toString());
}
}
```
在运行测试类时,将会输出服装信息:
```
Clothing{unitPrice=180.0, account=2, style='女装', totalPrice=306.0}
```
其中,totalPrice 是通过调用父类的 totalPrice 方法计算得到的,而 reducedPrice 是通过实现接口 VipPrice 的方法计算得到的。
阅读全文