Il miglior tutorial interfaccia Java Nel 2024, in questo tutorial puoi imparare interfaccia dichiarazioni,Implementazione dell'interfaccia,Interfaccia Inheritance,Interfaccia ereditarietà multipla,interfaccia Marker,
Interface (inglese: Interface), nel linguaggio di programmazione Java è un tipo astratto, è un insieme di metodi astratti, interfacce tipicamente interfacciano alla dichiarazione. Una classe ereditando la modalità di interfaccia, in tal modo di ereditare astratto interfaccia metodi.
L'interfaccia non è una classe, e l'approccio di classe all'interfaccia preparazione è molto simile, ma appartengono a concetti diversi. Classe descrive le proprietà ei metodi degli oggetti. classe metodo per implementare l'interfaccia contiene.
A meno che l'implementazione della classe interfaccia è astratta, oppure per definire l'interfaccia di classe tutti i metodi.
Interfaccia non può essere istanziato, ma può essere implementato. Una classe che implementa l'interfaccia, tutti i metodi descritti nell'interfaccia devono essere attuate, altrimenti deve essere dichiarato come una classe astratta. Inoltre, in Java, il tipo di interfaccia è utilizzata per dichiarare una variabile, possono diventare un puntatore nullo, o è destinato ad un oggetto di questa interfaccia.
Un'interfaccia simile a un punto di classe:
sintassi di dichiarazione di interfaccia è la seguente:
[可见度] interface 接口名称 [extends 其他的类名] { // 声明变量 // 抽象方法 }
parola chiave interfaccia viene utilizzata per dichiarare una interfaccia. Ecco un semplice esempio di una dichiarazione di interfaccia.
/* 文件名 : NameOfInterface.java */ import java.lang.*; //引入包 public interface NameOfInterface { //任何类型 final, static 字段 //抽象方法 }Interfaccia ha le seguenti caratteristiche:
/* 文件名 : Animal.java */ interface Animal { public void eat(); public void travel(); }
Quando la classe implementa l'interfaccia classe di interfaccia tutti i metodi per raggiungere. In caso contrario, la classe deve essere dichiarato come una classe astratta.
Usa implementa classe parola chiave che implementa l'interfaccia. Nella dichiarazione di classe, implementa parola chiave dietro dichiarazione di classe.
Implementare una sintassi interfaccia, è possibile utilizzare questa formula:
it. implements 接口名称[, 其他接口, 其他接口it., it.] it.
/* 文件名 : MammalInt.java */ public class MammalInt implements Animal{ public void eat(){ System.out.println("Mammal eats"); } public void travel(){ System.out.println("Mammal travels"); } public int noOfLegs(){ return 0; } public static void main(String args[]){ MammalInt m = new MammalInt(); m.eat(); m.travel(); } }
Gli esempi sopra risultati elaborati sono i seguenti:
Mammal eats Mammal travels
Quando si esegue l'override metodi dichiarati nell'interfaccia, è necessario prestare attenzione alle seguenti regole:
Al momento della implementazione dell'interfaccia, ma anche prestare attenzione ad alcune regole:
Un'interfaccia può ereditare un'altra interfaccia, più simile tra le classi e l'ereditarietà. Interfaccia eredità si estende parola chiave sub-interfaccia eredita i metodi di interfaccia genitore.
interfacce Hockey e calcio Le seguenti interfacce sono ereditati Sport:
// 文件名: Sports.java public interface Sports { public void setHomeTeam(String name); public void setVisitingTeam(String name); } // 文件名: Football.java public interface Football extends Sports { public void homeTeamScored(int points); public void visitingTeamScored(int points); public void endOfQuarter(int quarter); } // 文件名: Hockey.java public interface Hockey extends Sports { public void homeGoalScored(); public void visitingGoalScored(); public void endOfPeriod(int period); public void overtimePeriod(int ot); }
Hockey interfaccia si dichiara quattro metodi, interfaccia eredita due metodi da sport, in modo da realizzare la necessità di attuare l'Hockey interfaccia della classe sei metodi.
Allo stesso modo, la classe di implementazione dell'interfaccia di calcio ha bisogno di implementare cinque metodi, tra cui due dalle interfacce sportive.
In Java, più di ereditarietà di classe non è legale, ma l'interfaccia consente l'ereditarietà multipla.
Nell'interfaccia di ereditarietà multipla estende parola chiave solo una volta, nei successivi interfacce follow-successione. Come segue:
public interface Hockey extends Sports, Event
Il frammento di programma di cui sopra è legalmente definito sub-interfacce, a differenza di classi che interfaccia permette l'ereditarietà multipla, e Sport e eventi può definire o ereditare lo stesso metodo
L'interfaccia ereditata più comune non contiene metodi dell'interfaccia.
Esso identifica l'interfaccia sono i metodi e le proprietà di interfaccia. Essa indica semplicemente che appartiene a un particolare tipo di classe per altro codice per testare permesso di fare qualcosa.
Identifica il ruolo dell'interfaccia: semplice immagine di un oggetto che è quello di fare un segno (costruire un timbro), o fare un oggetto ha un certo privilegio.
Per esempio: il pacchetto java.awt.event interfacce interfaccia MouseListener eredità java.util.EventListener sono definiti come segue:
package java.util; public interface EventListener {}
Non c'è modo l'interfaccia è chiamata interfaccia marker. Un'interfaccia indicatore è utilizzato principalmente per due scopi:
Come EventListener interfaccia, che è composto da decine di altre API Interface Extension Java, è possibile utilizzare un'interfaccia marcatore per stabilire una serie di un'interfaccia interfaccia madre. Ad esempio: quando un'interfaccia eredita EventListener interfaccia, Java Virtual Machine (JVM) per conoscere l'interfaccia da utilizzare per un programma di agente eventi.
Questa situazione è uno scopo un'interfaccia tag originale, la classe che implementa l'interfaccia marcatore non ha bisogno di definire i metodi di interfaccia (come interfaccia marcatore è alcun modo), ma la classe in un tipo di interfaccia attraverso il polimorfismo.