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