Java 接口(interface)是一些方法特征的集合,這些方法特征來自于具體方法,這些方法符合它們一般來自于一些在系統中不斷出現的方法。一個接口只有方法的特征,而沒有方法的實現,因此這些方法在不同的地方被實現時,可以具有完全不同的行為。在Java語言中,Java接口還可以定義public的變量。接口把方法的特征和方法的實現分割開來。這種分割,體現在接口常常代表一個角色(role),它包裝與該角色相關的操作和屬性,而實現這個接口的類便扮演這個角色的演員(類)。一個角色(接口)可以由不同的演員(類)來演,而不同的演員(類)之間除了扮演一個共同的角色(接口)之外,并不要求有任何其他的共同之處。
注意:在人們講到“接口”時,這個詞往往有兩種不同的含義:
Java接口,這是一種Java語言中存在的結構,有特定的語法和結構。第二種僅僅是指一個類所具有的方法的特征集合,是一種邏輯上的抽象。
Java的接口可以有public、靜態的(static)和final的屬性。
public interface Test{ public static final int num; //成員常量具有固定的修飾符:public static final public abstract void method; //成員函數具有固定的修飾符:public abstract }public class Testimpl implements Test{// 實現接口中的所有方法 .....}接口的特性new運算符實例一個接口。Java的多態特性)/**功能:到達指定的時間發出通告*/public interface ActionListener{ void actionPerformed(ActionEvent event);}class TimePRinter implements ActionListener{ //此處ActionEvent參數提供了事件的相關信息 public void actionPerformed(ActionEvent event){ Date now = new Data(); System.out.println("At the tone, the time is" + now); Toolkit.getDefaultToolkit().beep(); }}//然后構造這個類的一個對象,并將它傳遞給Timer構造器。ActionListener listener = new TimePrinter();Timer t = new Timer(10000, listener);public interface Moveable{void move(double x, double y);}public interface Powered extends Moveable{double milesPerGallon();}注意點Java中不支持多繼承,也就是不能存在一個子類繼承多個父類的情況,當然你會問這是為什么呢.因為這會造成子類中某些方法或者變量的不確定性。Java出現了接口這個概念,接口可以很好的避免這個問題的出現。Java中通過多實現接口的方式去解決類之間無法多繼承的問題。新聞熱點
疑難解答