PTA-6-46 手机接口-适配器模式

题目:

用适配器模式编写程序代码。设计一个接口Phone,包含五个抽象方法:dial ()、location()、photo()、music()、video(),分别表示拨号、定位、拍照、音乐、视频功能。定义一个抽象类实现接口所有方法,以及定义两个子类继承此抽象类。具体要求如下。

已有的接口定义如下:

java 复制代码
interface Phone{
    void dial ();
    void location();
    void photo();
    void music();
    void video();
}

需要编写抽象类PhoneAdapter:

定义一个抽象类PhoneAdapter实现接口Phone,在此类中覆写接口中所有抽象方法。

需要编写两个子类:

(1) 定义一个子类OldPhone直接继承抽象类PhoneAdapter,有选择的实现dial ()、location()方法。

(2) 定义一个子类HuawPhone直接继承抽象类PhoneAdapter,有选择的实现dial ()、photo()、music()、video()方法。

已有的Main类定义

java 复制代码
/* 请在这里填写答案 */

public class Main{
    public static void main(String[] args) {
        print(new OldPhone());
        print(new HuawPhone());
    }
    public static void print(Phone p) {
        p.dial();
        p.location();
        p.photo();
        p.music();
        p.video();
    }
}

根据题目要求,代码实现如下:

java 复制代码
abstract class PhoneAdapter implements Phone{
	@Override
	public void dial() {
		// TODO Auto-generated method stub
		
	}
	@Override
	public void location() {
		// TODO Auto-generated method stub
		
	}
	@Override
	public void photo() {
		// TODO Auto-generated method stub
		
	}
	@Override
	public void music() {
		// TODO Auto-generated method stub
		
	}

	@Override
	public void video() {
		// TODO Auto-generated method stub
		
	}
}

class OldPhone extends PhoneAdapter {
	public void dial() {
		System.out.println("老人机拨打电话。");
	}
	public void location() {
		System.out.println("老人机定位。");
	}
}

class HuawPhone extends PhoneAdapter {
	public void dial() {
		System.out.println("华为手机拨打电话。");
	}
	public void photo() {
		System.out.println("华为手机拍照。");
	}
	public void music() {
		System.out.println("华为手机播放音乐。");
	}
	public void video() {
		System.out.println("华为手机播放视频。");
	}
}

以上就是 PTA-6-46 手机接口-适配器模式 的全部内容了,希望能对你有所帮助!

相关推荐
迪康coolmu3 分钟前
企业文件外发管控落地实践 —— 基于迪康端点安全一体化管理系统
运维·网络·经验分享·安全
数据狐(Datafox)5 分钟前
1688商品列表API接口解析(附 JSON 样例)
java·开发语言·数据库·爬虫·json
不穿鞋的懒羊羊7 分钟前
高精度算法——加、减、乘、除
算法
xcl09259 分钟前
健身场馆无人自动化系统:从架构设计到落地实践
java·spring boot
liliangcsdn17 分钟前
基本面因子计算的示例分析
算法
EatFan18 分钟前
一个二维码背后的系统设计:批次生成、绑定、扫码与数据统计怎么做?
java·后端·微信小程序·二维码·qrcode
白远山18 分钟前
自助健身小程序源码:架构拆解、核心链路与本地部署实战
java·架构·uni-app·需求分析
小灰灰搞电子36 分钟前
Rust Once 、OnceLock、LazyLock 一次性初始化详解
开发语言·后端·rust
Lyyaoo.41 分钟前
【动态规划】【待更新】
java·数据结构·算法
hqyjzsb44 分钟前
规划工商管理大学成长:搭建四层能力体系,重视高阶的 AI 能力建设
开发语言·人工智能·python·microsoft·职场和发展·数据挖掘·业界资讯