手机专卖店为了促销自己的产品,决定发行内部购物券,但其它商场不能发行该内部购物券。编写一个MobileShop类(模拟手机专卖店),该类中有一个名字为InnerPurchaseMoney的内部类(模拟内部购物券)。编写完整程序进行测试。
时间: 2024-11-04 09:11:27 浏览: 33
首先,我们创建一个名为`MobileShop`的类,它将包含一个内部类`InnerPurchaseMoney`,这个内部类代表手机专卖店的内部购物券。我们将设置一些规则,比如内部购物券只适用于本店购买,并且提供一个方法来验证购物券是否有效。
```java
public class MobileShop {
// 内部类 InnerPurchaseMoney 模拟内部购物券
public class InnerPurchaseMoney {
private String storeCode; // 专属商店编码
public InnerPurchaseMoney(String code) {
this.storeCode = code;
}
// 验证购物券是否在本店有效
public boolean isValidForCurrentStore(MobileShop currentShop) {
return currentShop.getStoreCode().equals(storeCode);
}
// 可能包含其他属性和方法,例如金额、有效期等
}
private String storeCode;
public MobileShop(String code) {
this.storeCode = code;
}
// 获取当前商店的编码
public String getStoreCode() {
return storeCode;
}
// 其他方法,如展示商品、处理订单等...
public static void main(String[] args) {
MobileShop shop = new MobileShop("XYZ123");
InnerPurchaseMoney voucher = new InnerPurchaseMoney(shop.getStoreCode());
// 测试购物券是否有效
if (voucher.isValidForCurrentStore(shop)) {
System.out.println("购物券在本店有效!");
} else {
System.out.println("购物券无法在本店使用!");
}
}
}
```
在这个例子中,`MobileShop`类有其特定的标识符(storeCode),而`InnerPurchaseMoney`类的`isValidForCurrentStore`方法用于检查购物券是否适合当前的商店。在`main`函数中,我们创建了一个`MobileShop`实例并生成了一个内部购物券,然后检查了它的有效性。
阅读全文