java编程实现电话卡类父类子类
时间: 2024-11-30 18:28:57 浏览: 32
在Java编程中,你可以通过创建一个父类(PhoneCard),然后定义一些通用的行为和属性,比如卡号、面额等,再让若干子类(如PrepaidPhoneCard和PostpaidPhoneCard)继承这个父类并添加特定于它们的功能。例如:
```java
// 父类 PhoneCard
public class PhoneCard {
private String cardNumber;
private double balance;
public PhoneCard(String cardNumber, double initialBalance) {
this.cardNumber = cardNumber;
this.balance = initialBalance;
}
// 公共方法
public void deposit(double amount) {
balance += amount;
}
public boolean isEnoughMoney(double cost) {
return balance >= cost;
}
// 重写toString()方法以获取卡片信息
@Override
public String toString() {
return "PhoneCard [cardNumber=" + cardNumber + ", balance=" + balance + "]";
}
}
// 子类 PrepaidPhoneCard
public class PrepaidPhoneCard extends PhoneCard {
public PrepaidPhoneCard(String cardNumber, double initialBalance) {
super(cardNumber, initialBalance);
}
// 子类特有的方法
public void call(int durationInMinutes) {
if (isEnoughMoney(durationInMinutes * callCostPerMinute)) {
// 执行通话逻辑
} else {
System.out.println("Insufficient balance for call.");
}
}
}
// 子类 PostpaidPhoneCard 可能有不同的计费模型
public class PostpaidPhoneCard extends PhoneCard {
// 如果有月租和超出套餐的计费规则,这里可以添加相应的方法
}
```
阅读全文
相关推荐


















