[精华帖?]滑稽之谈|||

题目:

模拟电脑USB功能设备使用

1.定义USB接口,具备最基本的开启功能和关闭功能

2.定义电脑类,具有开机、关机以及使用usb设备功能

3.鼠标类、具有usb功能,并具有额外的点击功能

4.键盘类,具有usb功能,并具有额外的敲击功能

5.电脑在使用usb设备时,如果是鼠标,则除了usb的开启、关闭功能之外,还能触发鼠标的点击功能

6.电脑在使用usb设备时,如果是键盘,则除了usb的开启、关闭功能之外,还能触发键盘的敲击功能



1.定义USB接口,具备最基本的开启功能和关闭功能

package com.cn.computer;

public interface USB {
//puvlic interface 接口名
void open();
void close();
}

2.定义电脑类,具有开机、关机以及使用usb设备功能

package com.cn.computer;

public class Computer {
public void powerOn(){
System.out.println("电脑已开机");
} public void powerOff(){
System.out.println("电脑已关机");
} public void useUsbDevice(USB usb){
usb.open();
if(usb instanceof Mouse){
((Mouse) usb).click();
}else if(usb instanceof Keyboard){
((Keyboard) usb).keyDown();
}
} public void deleteUsbDevice(USB usb){
System.out.println("移除usb设备");
usb.close();
}
}

3.鼠标类、具有usb功能,并具有额外的点击功能

package com.cn.computer;

public class Mouse implements USB{
//implements关键字实现接口
@Override
public void close() {
System.out.println("usb关闭,鼠标失去连接");
} @Override
public void open() {
System.out.println("usb开启,鼠标已连接");
} public void click(){
System.out.println("鼠标点击了");
}
}

4.键盘类,具有usb功能,并具有额外的敲击功能

package com.cn.computer;

public class Keyboard implements USB{
@Override
public void close() {
System.out.println("usb关闭,键盘失去连接");
} @Override
public void open() {
System.out.println("usb开启,键盘已连接");
} public void keyDown(){
System.out.println("键盘敲击了");
}
}

5.电脑在使用usb设备时,如果是鼠标,则除了usb的开启、关闭功能之外,还能触发鼠标的点击功能

6.电脑在使用usb设备时,如果是键盘,则除了usb的开启、关闭功能之外,还能触发键盘的敲击功能

package com.cn.computer;

public class Main {
public static void main(String[] args) {
Computer computer=new Computer();
computer.powerOn();
USB mouse=new Mouse();
computer.useUsbDevice(mouse);
USB keyboard=new Keyboard();
computer.useUsbDevice(keyboard);
computer.deleteUsbDevice(mouse);
computer.deleteUsbDevice(keyboard);
computer.powerOff();
}
}

运行结果

C:\java\JDK\bin\java.exe "-javaagent:C:\Program Files\JetBrains\IntelliJ IDEA 2019.1.3\...
电脑已开机
usb开启,鼠标已连接
鼠标点击了
usb开启,键盘已连接
键盘敲击了
移除usb设备
usb关闭,鼠标失去连接
移除usb设备
usb关闭,键盘失去连接
电脑已关机

[精华帖]Java接口怎么定义?如何使用?【实例讲解】的更多相关文章

  1. 教你在Java接口中定义方法

    基本上所有的Java教程都会告诉我们Java接口的方法都是public.abstract类型的,没有方法体的. 但是在JDK8里面,你是可以突破这个界限的哦. 假设我们现在有一个接口:TimeClie ...

  2. java接口中定义成员变量

    //抽象类中可以定义如下成员变量:public abstract class People { public String name; public int age; public abstract ...

  3. Java 接口中定义抽象方法有什么意义

    接口方法声明只能是public abstract的,所以不管你在声明的时候加不加abstract,都是可以的.Java 8开始,接口还引入了默认方法,也就是可以给接口的方法提供默认的实现,默认方法应当 ...

  4. 百度鹰眼Java接口调用增删改查实例

    因感觉百度鹰眼的使用场景比较符合实际业务,于是对百度鹰眼做了简单功能调试.刚开始使用springframework封装的RestTemplate,但是测试提示ak参数不存在.后又试了几种方法,均提示a ...

  5. 【插件开发】—— 11 窃听风云(Java事件监听原理-GEF实例讲解)

    前文回顾: 1 插件学习篇 2 简单的建立插件工程以及模型文件分析 3 利用扩展点,开发透视图 4 SWT编程须知 5 SWT简单控件的使用与布局搭配 6 SWT复杂空间与布局搭配 7 SWT布局详解 ...

  6. java接口和抽象类

    关于接口 1.创建一个接口,需要使用interface关键字. 2.实现一个接口,需要使用implements关键字. 3.接口的成员属性都是静态常量(默认public static final). ...

  7. Java 接口和抽象类差别

    原文:http://blog.csdn.net/sunboard/article/details/3831823 1.概述 一个软件设计的好坏,我想非常大程度上取决于它的总体架构,而这个总体架构事实上 ...

  8. Java 接口基础详解

    目录 Java接口示例 实现一个接口 接口实例 实现多个接口 方法签名重叠 接口变量 接口方法 接口默认方法 接口与继承 继承与默认方法 接口与多态性 在Java中,接口是一个抽象类型,有点类似于类, ...

  9. 我对面向对象设计的理解——Java接口和Java抽象类

    在没有好好地研习面向对象设计的设计模式之前,我对Java接口和Java抽象类的认识还是很模糊,很不可理解. 刚学Java语言时,就很难理解为什么要有接口这个概念,虽说是可以实现所谓的多继承,可一个只有 ...

随机推荐

  1. CC2530ADC转换

    一.ADC简介 ADC支持 14 位的模拟数字转换,具有多达12 位的 ENOB(有效数字位).它包括一个模拟多路转换器,具有多达8 个各自可配置的通道,以及一个参考电压发生器.转换结果通过DMA写入 ...

  2. 036_python的大文件下载以及进度条展示

    复习 1.黏包现象 粘包现象的成因: tcp协议的特点,面向流的,为了保证可靠传输,所以有很多优化的机制. 无边界 所有在连接建立的基础上传递的数据之间没有界限. 收发消息很有可能不完全相等. 缓存机 ...

  3. 物流配送中心管理系统(SSM+MYSQL)

    工程项目视频观看地址:www.toutiao.com/i6804066711… 本文首先对系统所涉及到的基础理论知识进行阐述,并在此基础上进行了系统分析.系统分析是平台开发的一个不可缺少的环节,为了能 ...

  4. 【GISER&&规划】我这二三年

    从从参加工作到现在,已经接近三年了.在这不长不短的时间里,我的职业规划犹如正余弦函数一样变化,一直游离在前端和后端之间. 第一年入职,被安排维护和拓展一套基于JAVA实现的地图瓦片生产工艺程序,不算复 ...

  5. Angular 从入坑到挖坑 - Router 路由使用入门指北

    一.Overview Angular 入坑记录的笔记第五篇,因为一直在加班的缘故拖了有一个多月,主要是介绍在 Angular 中如何配置路由,完成重定向以及参数传递.至于路由守卫.路由懒加载等&quo ...

  6. dp规划之矩阵连乘问题

    问题描述:给定n个矩阵{A1,A2,...,An},其中Ai与Ai+1是可乘的,我们要计算这n个矩阵的最少计算次数.  将多个矩阵连乘抽象为最后一次计算即两个矩阵相乘. public static v ...

  7. 爬取淘宝商品信息,放到html页面展示

    爬取淘宝商品信息 import pymysql import requests import re def getHTMLText(url): kv = {'cookie':'thw=cn; hng= ...

  8. Vuser发生器

    一.脚本开发过程: 1.计划:收集测试信息,整理业务逻辑,制定测试计划 2.录制脚本: 新建脚本---选择脚本协议(单协议脚本:多协议脚本:最近使用过协议)选择协议---开始录制脚本 脚本录制时,Vu ...

  9. C# Sign In With Apple苹果登陆后端验证

    苹果App授权登录 苹果官方的授权文档: 生成Token:https://developer.apple.com/documentation/sign_in_with_apple/generate_a ...

  10. 14.1 Go数据结构

    14.1 Go数据结构 每一个程序都在学习十八般武艺,学习语言.数据库.HTTP等技能. 而程序中的九阳神功就是数据结构与算,掌握了数据结构与算法,你的内功修炼就会有质的飞跃. 无论从事业务开发,测评 ...