Interfacce Java in 5 Minuti

INDICE TUTORIAL

Interfacce

Le interfacce, sono entità simili a classi, ma i metodi non hanno corpo. Servono a dare dei comportamenti standard a tutte le sottoclassi. Vengono definite tramite l’uso della parola interface al posto della keyword class, nella creazione di una classe.

Come concetto è molto simile ad extends, ma una sottoclasse in java può estendere soltanto un’unica superclasse, mentre una classe può implementare infinite interfaccie (ereditarietà multipla).

E’necessario implementare TUTTI i metodi delle interfacce. Se così non fosse, il compilatore ci darebbe un errore.

Esempio:

public interface Animale {

	public void emettiVerso();

}

Per implementare una interfaccia, si usa la parola chiave implements:

Esempio:

public class Cavallo implements Animale {

	@Override
	public void emettiVerso() {
		System.out.println("NITRITO");
		// TODO Auto-generated method stub
		
	}

}

Per implementare più interfaccie, è sufficiente separarle con una virgola:

public class Cavallo implements Animale, AltraInter, AltraAncora

Ricordarsi delle seguenti regole:

  • Possiamo dichiarare una variabile indicando come tipo un’interfaccia
  • Non possiamo istanziare un’interfaccia
  • Ad una variabile di tipo interfaccia possiamo assegnare solo istanze di classi che implementano l’interfaccia
  • Su di una variabile di tipo interfaccia possiamo invocare solo metodi dichiarati nell’interfaccia (o nelle sue “super-interfacce” (interfaccia da cui è estesa)).

Si noti che:

  • Le variabili, anche se non sono dichiarate final di fatto sono delle costanti;
  • Non ha metodi con corpo;

Esempio

abstract class Animale{
	
}
interface Felino{
	
}
public class Leone extends Animale  implements Felino {
	
	
}

Notare che se non esistessero le interfacce, non potrei dotare la classe Leone delle caratteristiche di Felino, perche essa estende già una classe (Animale)

(Visited 684 times, 1 visits today)

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.