最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java之如何定義USB接口

 更新時間:2023年05月08日 14:54:12   作者:驅(qū)動男孩  
這篇文章主要介紹了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)類之麥克風(fēng)
public class Microphone implements USB{
    public void turnOn(){
        System.out.println("麥克風(fēng)啟動了");
    }
    public void turnOff(){
        System.out.println("麥克風(fēng)關(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接口應(yīng)用:用接口定義標準

接口在實際開發(fā)中,有三大核心應(yīng)用環(huán)境:

  • 定義操作標準
  • 表示能力
  • 在分布式開發(fā)中,暴露遠程服務(wù)方法。
  • (后兩種應(yīng)用環(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)文章

  • Windows系統(tǒng)下Eclipse搭建ESP32編譯環(huán)境及安裝過程

    Windows系統(tǒng)下Eclipse搭建ESP32編譯環(huán)境及安裝過程

    Ecppse 使用了 ESP-IDF 中的 Makefile 支持。這意味著您需要從創(chuàng)建 ESP-IDF 項目開始。您可以使用 github 中的 idf-template 項目,接下來通過本文給大家介紹Windows系統(tǒng)下Eclipse搭建ESP32編譯環(huán)境及安裝過程,感興趣的朋友一起看看吧
    2021-10-10
  • ApiOperation和ApiParam注解依賴的安裝和使用以及注意事項說明

    ApiOperation和ApiParam注解依賴的安裝和使用以及注意事項說明

    這篇文章主要介紹了ApiOperation和ApiParam注解依賴的安裝和使用以及注意事項說明,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-09-09
  • Mybatis CachingExecutor二級緩存使用示例詳解

    Mybatis CachingExecutor二級緩存使用示例詳解

    這篇文章主要介紹了?Mybatis的CachingExecutor與二級緩存使用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-09-09
  • Java中集合LinkedList的原理與使用方法

    Java中集合LinkedList的原理與使用方法

    這篇文章主要給大家介紹了關(guān)于Java中集合LinkedList的原理與使用方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-06-06
  • Java contains用法示例

    Java contains用法示例

    這篇文章主要介紹了Java contains的用法示例,幫助大家更好的理解和學(xué)習(xí)Java,感興趣的朋友可以了解下
    2020-11-11
  • WebSocket實現(xiàn)Web聊天室功能

    WebSocket實現(xiàn)Web聊天室功能

    這篇文章主要為大家詳細介紹了WebSocket實現(xiàn)Web聊天室功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-08-08
  • Spring 中如何根據(jù)環(huán)境切換配置 @Profile

    Spring 中如何根據(jù)環(huán)境切換配置 @Profile

    這篇文章主要介紹了Spring中如何根據(jù)環(huán)境切換配置@Profile的操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-08-08
  • Springcloud seata分布式事務(wù)實現(xiàn)代碼解析

    Springcloud seata分布式事務(wù)實現(xiàn)代碼解析

    這篇文章主要介紹了Springcloud seata分布式事務(wù)實現(xiàn)代碼解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-12-12
  • java安全編碼指南之:表達式規(guī)則說明

    java安全編碼指南之:表達式規(guī)則說明

    這篇文章主要介紹了java安全編碼指南之:表達式規(guī)則說明,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-09-09
  • Java?BOI與NIO超詳細實例精講

    Java?BOI與NIO超詳細實例精講

    在Java的軟件設(shè)計開發(fā)中,通信架構(gòu)是不可避免的,我們在進行不同系統(tǒng)或者不同進程之間的數(shù)據(jù)交互,或者在高并發(fā)下的通信場景下都需要用到網(wǎng)絡(luò)通信相關(guān)的技術(shù),對于一些經(jīng)驗豐富的程序員來說,Java早期的網(wǎng)絡(luò)通信架構(gòu)存在一些缺陷,這篇文章介紹Java?BOI與NIO
    2022-11-11

最新評論

西华县| 湄潭县| 中阳县| 田阳县| 天水市| 台安县| 永城市| 浦城县| 高州市| 大冶市| 济阳县| 十堰市| 新沂市| 交口县| 曲水县| 云梦县| 宁都县| 阳原县| 堆龙德庆县| 阳朔县| 伊川县| 辉南县| 托克逊县| 达州市| 新乡市| 旅游| 双柏县| 遂川县| 双江| 璧山县| 桐柏县| 邯郸市| 黄冈市| 库车县| 法库县| 蕲春县| 楚雄市| 郯城县| 武山县| 栾城县| 岳西县|