Java 使用类,接口实现手机功能-- 练习接口的使用

|--需求说明

|--实现思路

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 }

测试类--实现手机

|--运行结果

|--过程错误

原文地址:https://www.cnblogs.com/twuxian/p/11198320.html

时间: 2024-11-11 03:22:12

Java 使用类,接口实现手机功能-- 练习接口的使用的相关文章

Java定时任务:利用java Timer类实现定时执行任务的功能

一.概述 在java中实现定时执行任务的功能,主要用到两个类,Timer和TimerTask类.其中Timer是用来在一个后台线程按指定的计划来执行指定的任务. TimerTask一个抽象类,它的子类代表一个可以被Timer计划的任务,具体要执行的代码写在TimerTask需要被实现的run方法中. 二.先看一个最简单的例子 我们通过代码来说明 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28

Java:利用java Timer类实现定时执行任务的功能

一.概述 在java中实现定时执行任务的功能,主要用到两个类,Timer和TimerTask类.其中Timer是用来在一个后台线程按指定的计划来执行指定的任务.TimerTask一个抽象类,它的子类代表一个可以被Timer计划的任务,具体要执行的代码写在TimerTask需要被实现的run方法中. 二.先看一个最简单的例子 我们通过代码来说明 import java.text.SimpleDateFormat; import java.util.Date; import java.util.Ti

Java Math 类中的新功能--浮点数

Java™语言规范第 5 版向 java.lang.Math和 java.lang.StrictMath添加了 10 种新方法,Java 6 又添加了 10 种.这个共两部分的系列文章的 第 1 部分介绍了很有意义的新的数学方法.它提供了在还未出现计算机的时代中数学家比较熟悉的函数.在第 2 部分中,我主要关注这样一些函数,它们的目的是操作浮点数,而不是抽象实数. 就像我在 第 1 部分中提到的一样,实数(比如 e或 0.2)和它的计算机表示(比如 Java double)之间的区别是非常重要的

java 之 类和对象 笔记

                                   =============类和对象 ======================    类:类是同一类事物的总称. 对象:现实世界中实实在在存在的事物. 类和对象的关系:类是封装对象的属性和行为的载体,反过来说具有相同属性和行为的一类实体称为类.如鸟类有鸵鸟.大雁.麻雀等.鸵鸟.大雁.麻雀被称为鸟类的实体,即对象.   面向对象:对象所共有的功能和属性进行抽像,成为了类.客观事物在人脑中的主观反映.在程序里类是创建对象的模板.

Java语言程序设计 上机实验4 掌握声明接口、一个类实现接口的声明和使用方法

Java语言程序设计 上机实验4 实验目的: 理解接口的作用,理解接口和实现接口的类的关系,掌握声明接口.一个类实现接口的声明和使用方法:熟悉Java语言包和实用包中的常用类. 实验内容:(*)为选做 声明圆柱体类Cylinder,继承椭圆类Ellipse(实现周长Perimeter接口和面积Area接口),为圆柱体类设计较为全面的构造方法,并实现体积Volume接口,计算表面积和体积. 将Java的若干关键字(15个以上)保存在一个字符串数组中,对其按升序排列,再采用顺序查找和二分法查找,判断

java类与对象基础--抽象类和接口

在java的类体系中,有两个比较特殊的抽象体--抽象类和接口.抽象体并不可以拥有具体的对象(而且接口甚至不是类),但是它们却是在java设计领域非常重要的两个概念,很多优秀的设计模式都是基于这两个概念的,尽管我们在进行应用开发时可能用的比较少,但是在真正的大型项目的架构开发中,他们是用来确定整个项目的整体框架的,是必不可少的.下面对抽象类以及接口的一些基本语法知识进行整理,用以备忘. 一.什么是抽象类?什么是接口? 首先,前面也说了,抽象类和接口都不可直接实例化,它很多时候只是在声明引用的时候拿

35.按要求编写Java程序: (1)编写一个接口:InterfaceA,只含有一个方法int method(int n); (2)编写一个类:ClassA来实现接口InterfaceA,实现int method(int n)接口方 法时,要求计算1到n的和; (3)编写另一个类:ClassB来实现接口InterfaceA,实现int method(int n)接口 方法时,要求计算n的阶乘(n

  35.按要求编写Java程序: (1)编写一个接口:InterfaceA,只含有一个方法int method(int n): (2)编写一个类:ClassA来实现接口InterfaceA,实现int method(int n)接口方 法时,要求计算1到n的和: (3)编写另一个类:ClassB来实现接口InterfaceA,实现int method(int n)接口 方法时,要求计算n的阶乘(n!): (4)编写测试类E,在测试类E的main方法中使用接口回调的形式来测试实现 接口的类. p

Java反射机制demo(四)—获取一个类的父类和实现的接口

Java反射机制demo(四)—获取一个类的父类和实现的接口 1,Java反射机制得到一个类的父类 使用Class类中的getSuperClass()方法能够得到一个类的父类 如果此 Class 表示 Object 类.一个接口.一个基本类型或 void,则返回 null.如果此对象表示一个数组类,则返回表示该 Object 类的 Class 对象. 测试代码: package com.aaron.reflect; public class Demo4 { public static void

Selenium Webdriver自动化测试设计(webdriver自动化架构设计、定义接口、日志处理、Java Robot类应用)

给各位网友分享一套课程,有兴趣的可以加我 2748165793 更多免费资料,可以查看http://blog.sina.com.cn/sonyandnokia码农的开心乐园 课程大纲第1章节:课程介绍概要介绍selenium介绍webdirver介绍webdriver环境搭建 第2章节Selenium IDE介绍IDE实例讲解录制回放过程录制脚本的导出IDE插件的介绍以及安装方法 第3章节Selenium 识别对象的方法包括:id,name,class name,link text,partia