中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁 > news >正文

做智能家居網(wǎng)站需要的參考文獻(xiàn)關(guān)鍵詞優(yōu)化公司推薦

做智能家居網(wǎng)站需要的參考文獻(xiàn),關(guān)鍵詞優(yōu)化公司推薦,酒店網(wǎng)站設(shè)計方案,淄博剛剛發(fā)布緊急通知目錄 接口 接口的概念 語法 接口使用 接口實(shí)現(xiàn)用例 接口特性 實(shí)現(xiàn)多個接口和實(shí)現(xiàn)用例 接口間的繼承 接口 接口的概念 在現(xiàn)實(shí)生活中,接口的例子比比皆是,比如:筆記本上的 USB 口,電源插座等。 電腦的 USB 口上&am…

目錄

接口

接口的概念

語法?

接口使用?

接口實(shí)現(xiàn)用例?

接口特性 ?

實(shí)現(xiàn)多個接口和實(shí)現(xiàn)用例

接口間的繼承?


接口

接口的概念

在現(xiàn)實(shí)生活中,接口的例子比比皆是,比如:筆記本上的 USB 口,電源插座等。
電腦的 USB 口上,可以插: U 盤、鼠標(biāo)、鍵盤 ... 所有符合 USB 協(xié)議的設(shè)備
電源插座插孔上,可以插:電腦、電視機(jī)、電飯煲 ... 所有符合規(guī)范的設(shè)備
通過上述例子可以看出: 接口就是公共的行為規(guī)范標(biāo)準(zhǔn),大家在實(shí)現(xiàn)時,只要符合規(guī)范標(biāo)準(zhǔn),就可以通用
Java 中,接口可以看成是:多個類的公共規(guī)范,是一種引用數(shù)據(jù)類型。?

語法?

接口在語法上和類相似?

public interface 接口名稱 {

......

}

提示:?? 創(chuàng)建接口時, 接口的命名一般以大寫字母 I 開頭?

接口使用?

接口不能直接使用,必須要有一個"實(shí)現(xiàn)類""實(shí)現(xiàn)"該接口,并實(shí)現(xiàn)接口中的所有抽象方法。

public class 類名稱 implements 接口名稱 {

...

}

注意:子類和父類之間是extends 繼承關(guān)系,類與接口之間是 implements 實(shí)現(xiàn)關(guān)系。 ?


接口實(shí)現(xiàn)用例?

以筆記本電腦使用 USB 鼠標(biāo)、 USB 鍵盤為例

USB接口????????筆記本類????????鼠標(biāo)類????????鍵盤類

//USB接口
public interface USB {//方法,打開設(shè)備,關(guān)閉設(shè)備void openEquipment();void stopEquipment();
}//定義鼠標(biāo)類,使用接口
class Mouse implements USB {//使用接口,就要重寫USB接口的抽象方法@Overridepublic void openEquipment() {System.out.println("使用鼠標(biāo)");}//自定義一個鼠標(biāo)點(diǎn)擊的功能public void click(){System.out.println("鼠標(biāo)點(diǎn)擊");}@Overridepublic void stopEquipment() {System.out.println("關(guān)閉鼠標(biāo)");}
}//定義鍵盤類,使用接口
class Keyboard implements USB{@Overridepublic void openEquipment() {System.out.println("使用鍵盤");}//自定義一個鍵盤輸入的方法public void inPut() {System.out.println("鍵盤輸入");}@Overridepublic void stopEquipment() {System.out.println("關(guān)閉鍵盤");}
}
//定義電腦類,使用設(shè)備
class Computer{public void powerOn(){System.out.println("打開電源");}public void useEquipment(USB usb){//這里使用USB usb的原因是:為了傳參并發(fā)生向上轉(zhuǎn)型usb.openEquipment();//這里會發(fā)生動態(tài)綁定//這里,我們調(diào)用了使用設(shè)備的方法,但我們有鼠標(biāo)和鍵盤,他們都要各自特有的方法click和inPut//但usb是接口類型,直接用usb去調(diào)用他們的特有方法,不可行//區(qū)分 引用的是誰的對象if(usb instanceof Mouse){Mouse mouse = (Mouse) usb;mouse.click();}else if(usb instanceof Keyboard){Keyboard keyboard = (Keyboard) usb;keyboard.inPut();}usb.stopEquipment();}public void powerOff(){System.out.println("關(guān)閉電源");}}
class Test{public static void main(String[] args) {Computer computer = new Computer();computer.powerOn();System.out.println();computer.useEquipment(new Keyboard());System.out.println();computer.useEquipment(new Mouse());System.out.println();computer.powerOff();}
}


接口特性 ?

  1. 接口類型是一種引用類型,不能直接 new 接口的對象
  2. 接口中的每一個方法都是默認(rèn)被 public?abstract 修飾
  3. 接口中的方法不能在接口中實(shí)現(xiàn)(因?yàn)槌橄蠓椒ú荒苡芯唧w的實(shí)現(xiàn)),只能由實(shí)現(xiàn)接口的類來實(shí)現(xiàn)
  4. 重寫接口中的方法時,不能使用默認(rèn)的訪問權(quán)限(因?yàn)榻涌诘姆椒J(rèn)是public)
  5. 接口中可以擁有變量,但接口中的變量會默認(rèn)被public static final 修飾
  6. 接口中不能有靜態(tài)代碼塊和構(gòu)造方法
  7. 接口雖然不是類,但是接口編譯完成后字節(jié)碼文件的后綴格式也是.class
  8. 如果類沒有實(shí)現(xiàn)接口中的所有的抽象方法,則類必須設(shè)置為抽象類

實(shí)現(xiàn)多個接口和實(shí)現(xiàn)用例

Java 中,類和類之間是單繼承的,一個類只能有一個父類,即 Java 中不支持多繼承 ,但是 一個類可以實(shí)現(xiàn)多個接 。
下面通過類來表示一組動物
創(chuàng)一個動物類
//動物類
class Animals{private String name;public Animals(String name) {this.name = name;}
}

創(chuàng)幾個接口?

//吃 接口
interface EAT{void eat();
}//跑 接口
interface RUN{void run();
}//飛 接口
interface FLY{void fly();
}//游泳 接口
interface SWIM{void swim();
}

創(chuàng)幾個具體的動物類?

小狗,可以吃和跑?

class Dog extends Animals implements EAT,RUN{public Dog(String name) {super(name);}@Overridepublic void eat() {System.out.println(this.name + "在吃");}@Overridepublic void run() {System.out.println(this.name + "在跑");}
}

小魚,可以吃和游?

class Fish extends Animals implements EAT,SWIM{public Fish(String name){super(name);}@Overridepublic void eat() {System.out.println(this.name + "在吃");}@Overridepublic void swim() {System.out.println(this.name + "在游");}
}

小鴨子,可以吃,飛,跑和游

class Duck extends Animals implements EAT,RUN,FLY,SWIM{public Duck(String name){super(name);}@Overridepublic void eat() {System.out.println(this.name + "在吃");}@Overridepublic void run() {System.out.println(this.name + "在跑");}@Overridepublic void fly() {System.out.println(this.name + "在飛");}@Overridepublic void swim() {}
}

上面的代碼展示了 Java 面向?qū)ο缶幊讨凶畛R姷挠梅?/span>: 一個類繼承一個父類, 同時實(shí)現(xiàn)多種接口?

繼承表達(dá)的含義是 is - a 語義, 而接口表達(dá)的含義是 具有 xxx 特性?

以下是完整代碼和執(zhí)行結(jié)果?

class Animals{public String name;public Animals(String name) {this.name = name;}
}//吃 接口
interface EAT{void eat();
}//跑 接口
interface RUN{void run();
}//飛 接口
interface FLY{void fly();
}//游泳 接口
interface SWIM{void swim();
}class Dog extends Animals implements EAT,RUN{public Dog(String name) {super(name);}@Overridepublic void eat() {System.out.println(this.name + "在吃");}@Overridepublic void run() {System.out.println(this.name + "在跑");}
}class Fish extends Animals implements EAT,SWIM{public Fish(String name){super(name);}@Overridepublic void eat() {System.out.println(this.name + "在吃");}@Overridepublic void swim() {System.out.println(this.name + "在游");}
}class Duck extends Animals implements EAT,RUN,FLY,SWIM{public Duck(String name){super(name);}@Overridepublic void eat() {System.out.println(this.name + "在吃");}@Overridepublic void run() {System.out.println(this.name + "在跑");}@Overridepublic void fly() {System.out.println(this.name + "在飛");}@Overridepublic void swim() {}
}public class Blog {public static void main(String[] args) {Dog dog = new Dog("小狗");dog.eat();dog.run();Fish fish = new Fish("小魚");fish.eat();fish.swim();Duck duck = new Duck("小鴨子");duck.eat();duck.fly();duck.run();duck.swim();}}


接口間的繼承?

Java中,類和類之間是單繼承的,一個類可以實(shí)現(xiàn)多個接口,接口與接口之間可以多繼承。即:用接口可以達(dá)到多繼承的目的。
接口可以繼承一個接口, 達(dá)到復(fù)用的效果. 使用 extends 關(guān)鍵字
interface RUN{void run();
}//游泳 接口
interface SWIM{void swim();
}interface ICanDo extends RUN, SWIM {
}class Frog implements ICanDo {...
}

?通過接口繼承創(chuàng)建一個新的接口 ICanDo?表示 "兩棲的". 此時實(shí)現(xiàn)接口創(chuàng)建的 Frog , 就繼續(xù)要實(shí)現(xiàn) run 方法, 也需要實(shí)現(xiàn) swim 方法.

接口間的繼承相當(dāng)于把多個接口合并在一起
http://www.risenshineclean.com/news/56960.html

相關(guān)文章:

  • 網(wǎng)站建設(shè)報價方案下載企業(yè)網(wǎng)站模板建站
  • 專業(yè)的app網(wǎng)站開發(fā)百度關(guān)鍵詞優(yōu)化多久上首頁
  • 可直接打開網(wǎng)站的網(wǎng)頁地推任務(wù)網(wǎng)
  • 網(wǎng)站安全如何做百度seo在線優(yōu)化
  • flask做的購物網(wǎng)站互聯(lián)網(wǎng)推廣廣告
  • 如何做網(wǎng)站推廣 求指點(diǎn)網(wǎng)絡(luò)建設(shè)推廣
  • 質(zhì)量好網(wǎng)站建設(shè)哪家便宜網(wǎng)站優(yōu)化費(fèi)用報價明細(xì)
  • 大型商業(yè)廣場網(wǎng)站建設(shè)免費(fèi)b2b平臺推廣
  • 做網(wǎng)站后端需要什么語言競價托管多少錢
  • 個人網(wǎng)頁設(shè)計包含html和css南寧網(wǎng)站優(yōu)化公司電話
  • 懷遠(yuǎn)做網(wǎng)站電話溫州seo招聘
  • 網(wǎng)絡(luò)規(guī)劃設(shè)計師自學(xué)百度小程序優(yōu)化排名
  • 怎么做qq二維碼網(wǎng)站排名優(yōu)化系統(tǒng)
  • 自媒體網(wǎng)站開發(fā)充電寶關(guān)鍵詞優(yōu)化
  • web仿網(wǎng)站開發(fā)視頻如何建立企業(yè)網(wǎng)站
  • 羅湖做網(wǎng)站的公司哪家好營銷方式和手段有哪些
  • 白城學(xué)做網(wǎng)站外貿(mào)平臺推廣
  • 長春網(wǎng)站建設(shè)推薦網(wǎng)誠傳媒網(wǎng)絡(luò)營銷的推廣手段
  • 如果做網(wǎng)站賺錢優(yōu)化關(guān)鍵詞的步驟
  • html怎么寫廣州網(wǎng)站優(yōu)化服務(wù)商
  • 怎么去跟客戶談網(wǎng)站建設(shè)四川seo優(yōu)化
  • 網(wǎng)站建設(shè)題庫核心關(guān)鍵詞舉例
  • 怎么建設(shè)h5網(wǎng)站怎樣做關(guān)鍵詞排名優(yōu)化
  • 怎么推廣產(chǎn)品最有效短視頻關(guān)鍵詞seo優(yōu)化
  • wordpress無法連接遠(yuǎn)程mysqlseo推廣人員
  • 真正能賺錢的網(wǎng)站app推廣平臺放單平臺
  • 工信部企業(yè)網(wǎng)站認(rèn)證搜索引擎有哪些平臺
  • 怎么做企業(yè)網(wǎng)站一級懸浮菜單一個萬能的營銷方案
  • 河南做網(wǎng)站聯(lián)系電話輿情網(wǎng)站直接打開的軟件
  • 廣東手機(jī)網(wǎng)站建設(shè)價格百度優(yōu)化