Interfaccia in Java con l'esempio
Cos'è l'interfaccia? Java?
An Interfaccia in Java il linguaggio di programmazione è definito come un tipo astratto utilizzato per specificare il comportamento di una classe. UN Java l'interfaccia contiene costanti statiche e metodi astratti. Una classe può implementare più interfacce. In Java, le interfacce vengono dichiarate utilizzando la parola chiave Interface. Tutti i metodi nell'interfaccia sono implicitamente pubblici e astratti.
Sintassi per dichiarare l'interfaccia
Per utilizzare un'interfaccia nella tua classe, aggiungi la parola chiave "implements" dopo il nome della classe seguita dal nome dell'interfaccia.
interface {
//methods
}
Esempio di implementazione dell'interfaccia
Ora, comprendiamo l'interfaccia in Java con esempio:
class Dog implements Pet
interface RidableAnimal extends Animal, Vehicle
Clicchi Qui. se il video non è accessibile
Perché è necessaria un'interfaccia?
Comprendere l'uso dell'interfaccia in Java meglio, vediamo un Java esempio di interfaccia. La classe “Media Player” ha due sottoclassi: lettore CD e lettore DVD. Ognuno ha la sua implementazione dell'interfaccia unica in Java metodo per riprodurre la musica.
Un'altra classe "unità combinata" eredita sia CD che DVD (vedi immagine sotto). Quale metodo di gioco dovrebbe ereditare? Ciò potrebbe causare seri problemi di progettazione. E quindi, Java non consente multipli eredità.
Ora prendiamo un altro esempio di Dog.
Supponiamo di avere un requisito in cui la classe "cane" eredita la classe "animale" e "Animale domestico" (vedi immagine sotto). Ma non puoi prolungare due lezioni Java. Allora cosa faresti? La soluzione è l'interfaccia.
Il regolamento per l'interfaccia dice:
- A Java l'interfaccia di implementazione è una classe astratta al 100% e ha solo metodi astratti.
- La classe può implementare un numero qualsiasi di interfacce.
La classe Cane può estendersi alla classe "Animale" e implementare l'interfaccia come "Animale domestico".
Java Esempio di interfaccia:
Comprendiamo il programma di interfaccia seguente in Java:
Passo 1) Copia il codice seguente in un editor.
interface Pet{
public void test();
}
class Dog implements Pet{
public void test(){
System.out.println("Interface Method Implemented");
}
public static void main(String args[]){
Pet p = new Dog();
p.test();
}
}
Passo 2) Salva, compila ed esegui il codice. Osservare l'output dell'interfaccia in Java Programma.
Differenza tra classe e interfaccia
| In classe, puoi creare un'istanza di variabile e creare un oggetto. | In un'interfaccia, non è possibile istanziare una variabile e creare un oggetto. |
| La classe può contenere metodi concreti (con implementazione). | L'interfaccia non può contenere metodi concreti (con implementazione). |
| Gli specificatori di accesso utilizzati con le classi sono private, protected e public. | In Interface viene utilizzato solo uno specificatore: Public. |
Quando utilizzare l'interfaccia e la classe astratta?
- Utilizzare una classe astratta quando è necessario definire un modello per un gruppo di sottoclassi
- Utilizzare un'interfaccia quando è necessario definire un ruolo per altre classi, indipendentemente dall'albero di ereditarietà di queste classi
È necessario conoscere alcuni fatti sull'interfaccia
- A Java la classe può implementarne più Java Interfacce. E' necessario che la classe implementi tutti i metodi dichiarati nelle interfacce.
- La classe dovrebbe sovrascrivere tutti i metodi astratti dichiarati nell'interfaccia
- L'interfaccia permette di inviare un messaggio ad un oggetto indipendentemente dalla classe a cui appartiene.
- La classe deve fornire funzionalità per i metodi dichiarati nell'interfaccia.
- Tutti i metodi in un'interfaccia sono implicitamente pubblici e astratti
- Non è possibile istanziare un'interfaccia
- Un riferimento all'interfaccia può puntare a oggetti delle sue classi di implementazione
- Un'interfaccia può estendersi da una o più interfacce. La classe può estendere solo una classe ma implementare un numero qualsiasi di interfacce
- Un'interfaccia non può implementare un'altra interfaccia. Se necessario, deve estendere un'altra interfaccia.
- Un'interfaccia dichiarata all'interno di un'altra interfaccia viene definita interfaccia nidificata
- Al momento della dichiarazione, la variabile di interfaccia deve essere inizializzata. Altrimenti, il compilatore genererà un errore.
- La classe non può implementare due interfacce in Java che abbiano metodi con lo stesso nome ma tipo di ritorno diverso.
Sommario:
- La classe che implementa l'interfaccia deve fornire funzionalità per i metodi dichiarati nell'interfaccia
- Tutti i metodi in un'interfaccia sono implicitamente pubblici e astratti
- Non è possibile istanziare un'interfaccia
- Un riferimento all'interfaccia può puntare a oggetti delle sue classi di implementazione
- Un'interfaccia può estendersi da una o più interfacce. Una classe può estendere solo una classe ma implementare un numero qualsiasi di interfacce




