首页 > 编程语言 >JAVA案例之使用接口实现手机功能

JAVA案例之使用接口实现手机功能

时间:2024-08-24 19:21:44浏览次数:11  
标签:JAVA void System 接口 案例 println 手机 public out

题目:

原始的手机,可以发短信,通电话。随着发展,手机增加了功能:音频、视频播放、拍照、上网。使用接口实现手机功能

类图:

AptitudeHandest:智能手机   CommonHandset:普通手机  Handset:手机父类  Network:网络           PlayWiring:播放功能     TheakePictures:拍照功能

代码实现:

根据类图实现各个接口和类,类图中实线是继承,虚线是实现

手机父类:

package QuestionPpt02youwenti;

public class Handset {
//    手机
    String brand;
    String type;
    public void sendInfo(){
        System.out.println("开始发送文字信息。。。");
//        发信息
    }
    public void call(){
        System.out.println("开始语音通话。。。。。");
//        打电话

    }
    public void info(){
        System.out.println("这是一款型号为"+type+"的"+brand+"手机");
//

    }

}

普通手机:

public class CommonHandset extends Handset implements PlayWiring{
    public void play(String content){
        System.out.println("开始播放音乐《"+content+"》");

    }
}

智能手机:

public class AptitudeHandest extends Handset implements TheakePictures,Network,PlayWiring {
//    智能手机
    public void networkConn(){
        System.out.println("已启动移动网络");

    }
    public void play(String content){
        System.out.println("开始播放视频《"+content+"》");

    }
    public void takePictures(){
        System.out.println("咔嚓。。。。咔嚓。。拍照成功");

    }
    public void call(){
        System.out.println("开始视频通话。。。。。");
//        打电话

    }
    public void sendInfo(){
        System.out.println("发送带图片和文字的信息。。。");
//        发信息
    }

}

连接网络接口:

public interface Network {
    //连接网络
    public  abstract void networkConn();
}

播放接口:

public interface PlayWiring {
    //播放
    public  abstract void play(String content);
}

拍照接口:

public interface TheakePictures {
//    照相
    public  abstract void takePictures();
}

拓展:

可以把父类变成抽象类,然后实现接口:implements TheakePictures,Network,PlayWiring ,这样子类普通手机和智能手机就不需要再实现这些接口了,通过多态(如下)就可以引用所有的方法。

Handset commonHandset  = new CommonHandset();
Handest aptitudeHandest = new AptitudeHandest();

标签:JAVA,void,System,接口,案例,println,手机,public,out
From: https://blog.csdn.net/qq_62859013/article/details/141467305

相关文章

  • 数据库系统 第22节 事务隔离级别案例分析
    1.读未提交(ReadUncommitted)场景:假设有两个事务,事务A正在更新账户余额,事务B正在读取账户余额。事务A(未提交):开始更新账户余额,将余额从$1000减少到$900。事务B(读取):读取账户余额,看到余额为$900(事务A未提交的更改)。问题:如果事务A最终回滚,事务B读取到的$900将是无效的,这就......
  • 017、二级Java知识点之Java Applet与图像处理:从基础到应用
    JavaApplet与图像处理:从基础到应用1.题目解析先来详细解析题目中给出的代码示例:importjava.____.*;importjava.awt.*;importjava.net.*;publicclassImageDemoextendsApplet{privateImageimage;publicvoid______(){Stringimage......
  • Java进度报告
    在自学Java的过程中,我已经完成了对基本语法的学习,并深入理解了数组的概念和用法。数组是Java中一种重要的数据结构,它可以存储固定大小的同类型元素,使得对数据的管理和操作变得更加方便。首先,我学习了数组的创建和初始化。在Java中,可以通过两种主要方式来声明和初始化数组:一种是使......
  • [JavaEE] 工作流- Activiti7 框架详解
    目录1、Activiti介绍1.1、BPMN设计器1.2、常见流程符号1.2.1、事件event1.2.2、活动activiti1.2.3、流向flow2、入门案例2.1、需求说明2.2、初始环境2.2.1、添加依赖2.2.2、添加配置2.2.3、添加引导类2.2.4、启动项目2.2.5、表结构2.2.6、常见api2.3、绘制流......
  • java常见面试题汇总
    ......
  • 使用Java导出MySQL数据:支持自定义分隔符的TXT文件生成
    在软件开发中,我们经常需要将数据库中的数据导出为文件,给关联系统做传输或者进行数据备份、迁移或分析。常见的导出格式包括CSV和TXT文件,分隔符可以是逗号、制表符或其他符号。本文将深入探讨如何使用Java从MySQL数据库中导出数据,并支持用户自定义分隔符来生成格式化的TXT文件。......
  • 数据结构(Java):揭开二叉搜索树删除机制的奥秘
    目录1、二叉搜索树1.1概念2、代码模拟实现2.1插入操作2.2查找操作2.3......
  • java字符串基础详解
    字符串的输入用Scanner类的方法 nextLine()。关键代码如下:Stringss;Scannersc=newScanner(System.in);ss=sc.nextLine();字符串中字符的获取方法(1):用ss.charAt(k)获取字符串ss中索引号为k的字符。(字符串中首字符的索引号为0)Stringss="Hello,world!";/......
  • Java中的动态代理
    今天来复习一下动态代理(无侵入的增强或改变某些方法),在学springAop的时候有点蒙,因为底层是用动态代理来实现的。1.动态代理介绍假设现在有一个大明星叫杨超越,它有唱歌和跳舞的本领,作为大明星是要用唱歌和跳舞来赚钱的,但是每次做节目,唱歌的时候要准备话筒、收钱,再唱歌;跳舞的时......
  • java+vue计算机毕设汽车租赁系统【源码+开题+论文】
    本系统(程序+源码)带文档lw万字以上文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景随着城市化进程的加速和人们出行需求的多样化,汽车租赁行业近年来迎来了前所未有的发展机遇。传统租车模式已难以满足现代人对便捷性、灵活性及个性化......