欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

詳解java接口基礎(chǔ)知識(shí)附思維導(dǎo)圖

接口:

豐順網(wǎng)站制作公司哪家好,找成都創(chuàng)新互聯(lián)!從網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開(kāi)發(fā)、APP開(kāi)發(fā)、成都響應(yīng)式網(wǎng)站建設(shè)等網(wǎng)站項(xiàng)目制作,到程序開(kāi)發(fā),運(yùn)營(yíng)維護(hù)。成都創(chuàng)新互聯(lián)于2013年創(chuàng)立到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來(lái)保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選成都創(chuàng)新互聯(lián)

官方的含義是---->java接口是一系列方法的聲明,是一些方法特征的集合

疑問(wèn):

那為什么不用抽象類呢?把他們共有的方法集合起來(lái)放在一個(gè)抽象類里面,同樣可以調(diào)用哇,但是反過(guò)來(lái)想一想如果這些方法,不是同一個(gè)類,就比如飛這個(gè)方法,飛機(jī)有飛這個(gè)方法,蚊子有飛這個(gè)方法,如果讓他連同時(shí)繼承擁有飛這個(gè)抽象類里面,是不符合單一職責(zé)原則的,所以我們可以提供一個(gè)飛的接口,飛機(jī),蚊子來(lái)實(shí)現(xiàn)這個(gè)接口,那么飛機(jī)和蚊子就擁有飛的能力啦,這是我對(duì)接口的理解

因?yàn)樽罱趯W(xué)習(xí)java 面向?qū)ο笾械慕涌冢彤?huà)了思維導(dǎo)圖:

詳解java接口基礎(chǔ)知識(shí)附思維導(dǎo)圖

這是我對(duì)接口知識(shí)的基本總結(jié)

舉一個(gè)案例希望大家能理解接口!

現(xiàn)在有一個(gè)需求,有一個(gè)門(mén)door類,有一個(gè)防盜門(mén)AntiTheDoor類,有一個(gè)鐵門(mén)IronDoor類,因?yàn)榉辣I門(mén)和鐵門(mén)都有門(mén)的屬性,所以二者
繼承門(mén)door類
他們都有一個(gè)功能,就是上鎖與開(kāi)鎖,還有一個(gè)防盜門(mén)獨(dú)有的功能,就是貓眼CatEye功能,貓眼功能是防盜門(mén)獨(dú)有的方法,所以應(yīng)當(dāng)把
貓眼看成一個(gè)接口,防盜門(mén)可以實(shí)現(xiàn)它,這樣我們用代碼怎么來(lái)詮釋呢(定義與實(shí)現(xiàn))

父類door

public abstract class Door {

	/**
	 * 開(kāi)門(mén)
	 */
	public abstract void open();
	/**
	 * 關(guān)門(mén)
	 */
	public abstract void close();
	
}

接口:只寫(xiě)應(yīng)該具有的功能

public interface CatEye {
	/**
	 * 在使用接口的所有類中,需要實(shí)現(xiàn)接口中所有的方法
	 * 他們有這個(gè)功能,但是具體的實(shí)現(xiàn)放是不一樣的,需要實(shí)現(xiàn)他的類在里面重新定義它新的生命,就比如,普通的防盜門(mén)里的貓眼就是簡(jiǎn)單的看
	 * 但是,還有一些貓眼的看有掃描的功能,不同的需求放在不同的類里面來(lái)具體的實(shí)現(xiàn)
	 */
	void look();
}
public interface Lock {

	/**
	 * 上鎖
	 */
	void upLock();
	void downLock();
}

防盜門(mén)是門(mén)door的子類,繼承父類開(kāi)門(mén)關(guān)門(mén)的方法,同時(shí)擁有上鎖,與貓眼的功能

public class AntiTheDoor extends Door implements Lock,CatEye{

	@Override
	public void look() {
		System.out.println("防盜門(mén)的貓眼,伸頭瞪眼");
		
	}

	@Override
	public void upLock() {
		// TODO 自動(dòng)生成的方法存根
		System.out.println("防盜門(mén)開(kāi)鎖:左轉(zhuǎn)三圈");
		
	}

	@Override
	public void downLock() {
		// TODO 自動(dòng)生成的方法存根
		System.out.println("防盜門(mén)的關(guān)鎖,右轉(zhuǎn)三圈");
		
	}

	@Override
	public void open() {
		// TODO 自動(dòng)生成的方法存根
		System.out.println("防盜門(mén)的開(kāi)門(mén):用頭頂");
		
	}

	@Override
	public void close() {
		// TODO 自動(dòng)生成的方法存根
		System.out.println("防盜門(mén)的關(guān)門(mén):用腳蹬");
		
	}
	

}

相比于防盜門(mén),鐵門(mén)只有上鎖的功能

public class IronDoor extends Door implements Lock{

	@Override
	public void upLock() {
		System.out.println("鐵門(mén)的開(kāi)鎖,右轉(zhuǎn)三圈");
		
	}

	@Override
	public void downLock() {
		System.out.println("鐵門(mén)的上鎖,左轉(zhuǎn)三圈");
		
	}

	@Override
	public void open() {
		System.out.println("鐵門(mén)的開(kāi)門(mén)用腳蹬");
		
	}

	@Override
	public void close() {
			System.out.println("鐵門(mén)的關(guān)門(mén)方式,用頭頂");	
	}
	

}

測(cè)試類:

public class test {

	public static void main(String[] args) {
		AntiTheDoor atd = new AntiTheDoor();
		atd.upLock();
		atd.open();
		atd.close();
		atd.downLock();
	}
}

運(yùn)行結(jié)果:

防盜門(mén)開(kāi)鎖:左轉(zhuǎn)三圈
防盜門(mén)的開(kāi)門(mén):用頭頂
防盜門(mén)的關(guān)門(mén):用腳蹬
防盜門(mén)的關(guān)鎖,右轉(zhuǎn)三圈

 一個(gè)接口只有方法的特征沒(méi)有方法的實(shí)現(xiàn),因此這些方法可以在不同的地方被不同的類實(shí)現(xiàn),而這些實(shí)現(xiàn)可以有具體不同的能力.

以上所述是小編給大家介紹的java接口基礎(chǔ)知識(shí)詳解整合,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)創(chuàng)新互聯(lián)網(wǎng)站的支持!

網(wǎng)頁(yè)名稱:詳解java接口基礎(chǔ)知識(shí)附思維導(dǎo)圖
轉(zhuǎn)載注明:http://chinadenli.net/article20/iigpjo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制開(kāi)發(fā)電子商務(wù)網(wǎng)站內(nèi)鏈定制網(wǎng)站營(yíng)銷型網(wǎng)站建設(shè)建站公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)