java之如何定義USB接口
java定義USB接口
定義USB接口,模擬各USB設(shè)備,在電腦開機時依次啟動,關(guān)機時依次退出
具體代碼實現(xiàn):
USB類
public interface USB {
void turnOn();
void turnOff();
}接口類的實現(xiàn)
//接口的實現(xiàn)類之鼠標
public class Mouse implements USB {
public void turnOn(){
System.out.println("鼠標啟動了");
}
public void turnOff(){
System.out.println("鼠標關(guān)閉了");
}
}
//接口的實現(xiàn)類之鍵盤
public class KeyBoard implements USB{
public void turnOn(){
System.out.println("鍵盤啟動了");
}
public void turnOff(){
System.out.println("鍵盤關(guān)閉了");
}
}
//接口的實現(xiàn)類之麥克風
public class Microphone implements USB{
public void turnOn(){
System.out.println("麥克風啟動了");
}
public void turnOff(){
System.out.println("麥克風關(guān)閉了");
}
}計算機類
//計算機類
public class Computer {
private USB[] usbArr = new USB[4];
public void add(USB usb){
for(int i = 0; i < usbArr.length;i++)
{
if(usbArr[i] == null)
{
usbArr[i] = usb;
break;
}
}
}
public void powerOn() {
for(int i=0;i<usbArr.length;i++)
{
if(usbArr[i]!=null)
{
usbArr[i].turnOn();
}
}
System.out.println("電腦開機成功");
}
public void powerOff()
{
for(int i=0;i<usbArr.length;i++)
{
if(usbArr[i]!=null)
{
usbArr[i].turnOff();
}
}
System.out.println("電腦關(guān)機成功");
}
}Usb測試類
public class USBTest {
public static void main(String[] args){
Computer p = new Computer();
p.add(new Mouse());
p.add(new KeyBoard());
p.add(new Microphone());
p.powerOn();
System.out.println("-----------------");
p.powerOff();
}
}控制臺輸出內(nèi)容

注意:因為類的修飾符都有public,所以對于每個類,都要單獨的eclipse中的一個包內(nèi)定義這些類。
java接口應用:用接口定義標準
接口在實際開發(fā)中,有三大核心應用環(huán)境:
- 定義操作標準
- 表示能力
- 在分布式開發(fā)中,暴露遠程服務方法。
- (后兩種應用環(huán)境還沒接觸,等以后解釋。)
如下圖示例,比如鍵盤、鼠標、u盤等設(shè)備與電腦連接,必須通過電腦的USB設(shè)備,才能電腦訪問,換一種例子解釋就是:要想見一個公司的大boss或者明星(電腦)。要先統(tǒng)一聯(lián)系他們的秘書(接口),然后秘書再轉(zhuǎn)達給boss或者明星(接口子類)。

代碼示例:
//使用一個接口實現(xiàn)一個標準,正常的開發(fā)中先寫標準(接口),再寫類
interface USB{
public void insert();//插入
public void setup();//安裝驅(qū)動
}
//必須按著接口的標準使用電腦
class Computer{
public void plugIn(USB usb){
usb.insert();
usb.setup();
}
}
//鼠標
class Mouse implements USB{
public void insert(){
System.out.println("鼠標插入");
}
public void setup(){
System.out.println("鼠標安裝驅(qū)動");
}
}
//U盤
class UDisk implements USB{
public void insert(){
System.out.println("U盤插入");
}
public void setup(){
System.out.println("U盤安裝驅(qū)動");
}
}
class InterfaceDemo{
public static void main(String[] args) {
Computer computer = new Computer();//實例化電腦的對象,調(diào)用其中的方法
computer.plugIn(new Mouse());
System.out.println("================");
computer.plugIn(new UDisk());
}
}運行結(jié)果:
鼠標插入
鼠標安裝驅(qū)動
================
U盤插入
U盤安裝驅(qū)動
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
GSON實現(xiàn)Java對象的JSON序列化與反序列化的實例教程
GSON是Google開發(fā)并開源的一個Java的JSON轉(zhuǎn)換庫,這里我們將來講解GSON實現(xiàn)Java對象的JSON序列化與反序列化的實例教程,需要的朋友可以參考下2016-06-06
Java list與set中contains()方法效率案例詳解
這篇文章主要介紹了Java list與set中contains()方法效率案例詳解,本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下2021-08-08
MyBatis將查詢出的兩列數(shù)據(jù)裝配成鍵值對的操作方法
這篇文章主要介紹了MyBatis將查詢出的兩列數(shù)據(jù)裝配成鍵值對的操作代碼,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-08-08

