|--需求说明
|--实现思路
1.根据....is......a....就是继承的逻辑,确定所有的手机都有一个手机的父类,这个父类定义为抽象类,里面定义两个抽象方法 实现打电话和发信息
2.根据....has....a....就用接口的逻辑,确定需要四个类---相机接口、移动网络接口、音频播放接口、视频播放接口
3.分别创建索尼和HTC手机类,继承手机类,按照需求分别接入接口
|--代码内容
1 /** 2 * @auther::9527 3 * @Description: 定义手机本身的功能,这个类是后来手机的父类 4 * @program: oop 5 * @create: -07-16 22:54 6 */ 7 public abstract class Phones { 8//打电话 9public abstract void call(); 10//发短信11public abstract void text();12//手机型号13public abstract void type();14 }
父类---Phones
1 /** 2 * @auther::9527 3 * @Description: 移动网络 4 * @program: oop 5 * @create: -07-16 23:08 6 */ 7 public interface Mobil { 8//网络 9void wangLuo();10 }
接口--移动网络
1 /** 2 * @auther::9527 3 * @Description: 实现拍照功能 4 * @program: oop 5 * @create: -07-16 23:01 6 */ 7 public interface Camera { 8//拍照 9void camera();10 }
接口--相机
1 /** 2 * @auther::9527 3 * @Description: 播放音频 4 * @program: oop 5 * @create: -07-16 22:59 6 */ 7 public interface PlayMp3 { 8//播放音频 9void playMp3();10 }
接口--音频
1 /** 2 * @auther::9527 3 * @Description: 播放视频 4 * @program: oop 5 * @create: -07-16 22:57 6 */ 7 public interface PlayMp4 { 8//播放视频 9void playMp4();10 }
接口--播放视频
1 /** 2 * @auther::9527 3 * @Description: HTC手机 4 * @program: oop 5 * @create: -07-16 23:02 6 */ 7 public class HTCI1900 extends Phones implements PlayMp4,PlayMp3,Camera,Mobil{ 8 9 10@Override11public void type() {12 System.out.println("这是一部HTC的I9100手机");13}14 15@Override16public void camera() {17 System.out.println("咔嚓,拍照成功");18}19 20@Override21public void call() {22 System.out.println("开始视频通话");23}24 25@Override26public void text() {27 System.out.println("发送带图片的文字");28}29 30@Override31public void playMp3() {32 System.out.println("播放《今天是个好日子》");33}34 35@Override36public void playMp4() {37 System.out.println("开始播放《小时代》");38}39 40@Override41public void wangLuo() {42 System.out.println("接入移动网络");43}44 }
手机----索尼
1 /** 2 * @auther::9527 3 * @Description: G520C手机 4 * @program: oop 5 * @create: -07-16 22:56 6 */ 7 public class PhoneG520C extends Phones implements PlayMp3 { 8@Override 9public void call() {10 System.out.println("开始语音通话");11}12 13@Override14public void text() {15 System.out.println("发送文字信息");16}17 18@Override19public void type() {20 System.out.println("这是一款型号为G502C的索尼手机");21}22 23@Override24public void playMp3() {25 System.out.println("开始播放音乐《凉凉》");26}27 }
手机--HTC
1 /** 2 * @auther::9527 3 * @Description: 测试类 4 * @program: oop 5 * @create: -07-16 23:10 6 */ 7 public class PhoneMgr { 8public static void main(String[] args) { 9 //实现索尼手机10 PhoneG520C suoni = new PhoneG520C();11 suoni.type();12 suoni.playMp3();13 suoni.text();14 suoni.call();15 16 System.out.println("\n");17 18 //实现HTC手机19 HTCI1900 htc = new HTCI1900();20 htc.type();21 htc.wangLuo();22 htc.playMp4();23 htc.camera();24 htc.text();25 htc.call();26}27 28 }
测试类--实现手机
|--运行结果
|--过程错误
无