用java定义一个类Phone, 编写方法call) 表示打电话功能定义一个Phone的子类NewPhone,重写父类call)方法,让它除了打电话功能外还具有开启语言和关闭语言功能。
时间: 2024-10-24 16:09:09 浏览: 41
Android通话默认打开扬声器的方法
5星 · 资源好评率100%
在 Java 中,我们可以创建一个名为 `Phone` 的基础类,并定义一个 `call()` 方法来表示打电话的功能。然后,我们可以创建一个名为 `NewPhone` 的子类,该子类会覆盖(override)父类的 `call()` 方法,增加额外的功能如开启和关闭语言。
首先,我们定义 `Phone` 类:
```java
public class Phone {
// 基础电话类的 call() 方法,仅表示打电话
public void call() {
System.out.println("打电话");
}
}
```
接下来,我们定义 `NewPhone` 子类,它扩展了 `Phone` 并重写了 `call()` 方法:
```java
public class NewPhone extends Phone {
private boolean isLanguageEnabled; // 是否启用语言
// 构造函数初始化语言状态
public NewPhone(boolean isLanguageEnabled) {
this.isLanguageEnabled = isLanguageEnabled;
}
@Override
public void call() {
if (isLanguageEnabled) {
System.out.println("打电话,支持多种语言模式");
} else {
super.call(); // 调用父类的原始 call() 方法
System.out.println("打电话");
}
}
// 其他方法,例如开关语言
public void enableLanguage() {
isLanguageEnabled = true;
System.out.println("语言已开启");
}
public void disableLanguage() {
isLanguageEnabled = false;
System.out.println("语言已关闭");
}
}
```
现在,你可以创建 `NewPhone` 对象并使用它的特性:
```java
public static void main(String[] args) {
NewPhone newPhone = new NewPhone(true); // 初始化时启用语言
newPhone.call(); // 打电话,显示语言支持信息
newPhone.enableLanguage(); // 开启语言
newPhone.call(); // 再次打电话,显示语言模式
newPhone.disableLanguage(); // 关闭语言
newPhone.call(); // 最后一次打电话,恢复原始功能
}
```
阅读全文