您好,登錄后才能下訂單哦!
小編給大家分享一下在Java中實現接口的方法,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!
在java中,接口像類一樣,可以有方法和變量,但在接口中聲明的方法默認是抽象的(只有方法簽名,沒有主體)。
接口是指定類必須執行什么操作,而不是如何操作。如果類實現了接口并且沒有為接口中指定的所有函數提供方法體,則必須將類聲明為抽象的。
接口的基本語法:
interface <interface_name> { // 聲明常量字段 // 聲明抽象方法 // 默認情況下 }
要聲明接口,請使用interface關鍵字。它用于提供完全抽象。這意味著接口中的所有方法都是使用空主體聲明的,并且是公共的,默認情況下所有字段都是public,static和final。
要實現接口,請使用implements關鍵字。實現接口的類必須實現接口中聲明的所有方法。
為什么要使用接口?
1、它用于實現完全抽象。
2、由于java在類的情況下不支持多重繼承,但是通過使用接口它可以實現多重繼承。
3、它還用于實現松耦合。
4、接口用于實現抽象。所以問題出現了為什么在我們有抽象類時使用接口?
原因是,抽象類可能包含非final變量,而interface中的變量是final,public和static。
// 一個簡單的接口 interface Player { final int id = 10; int move(); }
接口的的實現
要實現接口,我們使用關鍵字:implement
簡單實例:
讓我們考慮一個Bicylce, Bike, car等車子的例子,它們有共同的功能。所以我們建立了一個接口并把所有這些共同的功能放在一起。讓Bicylce, Bike, car…等等用他們自己的方式在他們自己的類里實現所有這些特征。
import java.io.*; interface Vehicle { // 一切都是抽象的方法 void changeGear(int a); void speedUp(int a); void applyBrakes(int a); } class Bicycle implements Vehicle{ int speed; int gear; // 換檔 @Override public void changeGear(int newGear){ gear = newGear; } // to increase speed @Override public void speedUp(int increment){ speed = speed + increment; } // 降低速度 @Override public void applyBrakes(int decrement){ speed = speed - decrement; } public void printStates() { System.out.println("speed: " + speed + " gear: " + gear); } } class Bike implements Vehicle { int speed; int gear; // to change gear @Override public void changeGear(int newGear){ gear = newGear; } // to increase speed @Override public void speedUp(int increment){ speed = speed + increment; } // to decrease speed @Override public void applyBrakes(int decrement){ speed = speed - decrement; } public void printStates() { System.out.println("speed: " + speed + " gear: " + gear); } } class GFG { public static void main (String[] args) { // creating an inatance of Bicycle // doing some operations Bicycle bicycle = new Bicycle(); bicycle.changeGear(2); bicycle.speedUp(3); bicycle.applyBrakes(1); System.out.println("Bicycle present state :"); bicycle.printStates(); // creating instance of bike. Bike bike = new Bike(); bike.changeGear(1); bike.speedUp(4); bike.applyBrakes(3); System.out.println("Bike present state :"); bike.printStates(); } }
看完了這篇文章,相信你對在Java中實現接口的方法有了一定的了解,想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。