创建一个电器类Appliance 里面有方法start 输出开始工作创建一个接口A里面有一个show方法 ,创建一个手机类phone继承电器类并且实现A接口,输出手机显示信息(show)重写start输出手机开始工作,在test类中向上转型创建b对象,在向下转型调用start和show方法
时间: 2024-03-12 12:45:28 浏览: 28
下面是实现上述要求的Java代码示例:
```
// 定义电器类
class Appliance {
// 开始工作
public void start() {
System.out.println("Appliance starts working.");
}
}
// 定义接口A
interface A {
// 显示信息
void show();
}
// 定义手机类,继承电器类并实现接口A
class Phone extends Appliance implements A {
// 重写start方法
@Override
public void start() {
System.out.println("Phone starts working.");
}
// 实现接口A的show方法
@Override
public void show() {
System.out.println("Phone shows information.");
}
}
// 测试类
public class Test {
public static void main(String[] args) {
// 向上转型创建b对象
Appliance b = new Phone();
// 向下转型调用start和show方法
if (b instanceof Phone) {
Phone phone = (Phone) b;
phone.start();
phone.show();
}
}
}
```
在上面的代码中,我们定义了一个电器类Appliance和一个接口A,以及一个手机类Phone继承Appliance并实现了接口A。在Test类中,我们先向上转型创建了一个Appliance对象b,然后再向下转型为Phone类型,并调用了重写后的start和实现的show方法。