Interfacce
Un’interfaccia è un contratto che definisce
un insieme di metodi che una classe deve
implementare (senza specificarne
l’implementazione). Le interfacce
permettono di descrivere cosa una classe
deve fare, lasciando alla classe la libertà di
decidere come farlo.
Implementazione di interfacce:
1) Una classe può implementare una o
più interfacce;
2) Gli oggetti di una classe che
implementa un’interfaccia possono
essere utilizzati dove serve conformità
con l’interfaccia implementata.
Caratteristiche delle interfacce:
1) Tutti i metodi di un’interfaccia sono
public;
2) Un’interfaccia può definire costanti
ma non può avere attributi;
3) Le interfacce possono contenere più
metodi.
Alcuni metodi di interfaccia possono avere
requisiti impliciti, come il metodo
compareTo():
1) Restituire un valore negativo se il
chiamante è minore del parametro;
2) Restituire 0 se sono uguali;
3) Restituire un valore positivo se il
chiamante è maggiore del parametro.
Interfaccia o classe astratta?
Sia le interfacce che le classi astratte
definiscono metodi che devono essere
implementati dalle classi derivate.
Entrambe forniscono una struttura per
condividere comportamenti comuni tra
classi.
INTERFACCE CLASSI ASTRATTE
Non possono avere Possono avere
attributi di istanza attributi di istanza
Possono avere solo Possono avere sia
metodi astratti metodi astratti che
concreti
Tutti i metodi sono I metodi possono
implicitamente avere diverse
public visibilità
Una classe può Una classe può
implementare più estendere solo una
interfacce classe astratta
Sono utilizzate per Sono utilizzate per
descrivere condividere codice
comportamenti e comportamenti
comuni comuni tra classi
correlate
NULL
Null è un valore speciale utilizzato per
indicare l’assenza di un riferimento ad un
oggetto in Java ed è particolarmente utile
-
Programmazione JAVA
-
Appunti di Programmazione ad oggetti - Java
-
Programmazione ad oggetti e Java (1)
-
Appunti Programmazione ad oggetti e Java