Una dichiarazione di interfaccia si compone di modificatori, la parola chiave interface
, il nome dell’interfaccia, un elenco separato da virgole di un genitore interfacce (se del caso), e l’interfaccia per il corpo. Ad esempio:
L’identificatore di accesso public
indica che l’interfaccia può essere utilizzata da qualsiasi classe in qualsiasi pacchetto., Se non si specifica che l’interfaccia è pubblica, l’interfaccia è accessibile solo alle classi definite nello stesso pacchetto dell’interfaccia.
Un’interfaccia può estendere altre interfacce, proprio come una sottoclasse di classe o estendere un’altra classe. Tuttavia, mentre una classe può estendere solo un’altra classe, un’interfaccia può estendere qualsiasi numero di interfacce. La dichiarazione di interfaccia include un elenco separato da virgole di tutte le interfacce che estende.
Il corpo dell’interfaccia
Il corpo dell’interfaccia può contenere metodi astratti,metodi predefiniti e metodi statici., Un metodo astratto all’interno di un’interfaccia è seguito da un punto e virgola, ma senza parentesi graffe (un metodo astratto non contiene un’implementazione). I metodi predefiniti sono definiti con il modificatoredefault
e i metodi statici con la parola chiavestatic
. Tutti i metodi astratti, predefiniti e statici in un’interfaccia sono implicitamentepublic
, quindi è possibile omettere il modificatorepublic
.
Inoltre, un’interfaccia può contenere dichiarazioni costanti., Tutti i valori costanti definiti in un’interfaccia sono implicitamente public
, static
e final
. Ancora una volta, è possibile omettere questi modificatori.