En guide til indre grensesnitt i Java

1. Introduksjon

I denne korte opplæringen ser vi på indre grensesnitt i Java. De brukes hovedsakelig til:

  • løse problemet med navneavstand når grensesnittet har et felles navn
  • økende innkapsling
  • øke lesbarheten ved å gruppere relaterte grensesnitt på ett sted

Et velkjent eksempel er Inngang grensesnitt som er erklært inne i Kart grensesnitt. Definert på denne måten er grensesnittet ikke i globalt omfang, og det refereres til som Kart. Inngang å skille den fra andre Inngang grensesnitt og gjøre forholdet til Kart åpenbart.

2. Indre grensesnitt

Per definisjon skjer erklæring om et indre grensesnitt i kroppen til et annet grensesnitt eller klasse.

De er implisitt offentlige og statiske, så vel som feltene deres når deklareres i et annet grensesnitt (ligner feltdeklarasjoner i grensesnitt på toppnivå), og de kan implementeres hvor som helst:

offentlig grensesnitt kunde {// ... grensesnittliste {// ...}}

Indre grensesnitt deklarert i en annen klasse er også statiske, men de kan ha tilgangsspesifikatorer som kan begrense hvor de kan implementeres:

offentlig klasse kunde {offentlig grensesnittliste {void add (kundekunde); String getCustomerNames (); } // ...}

I eksemplet ovenfor har vi en Liste grensesnitt som vil tjene til å erklære noen operasjoner på listen over Kunder som å legge til nye, få en String representasjon og så videre.

Liste er et vanlig navn, og for å samarbeide med andre biblioteker som definerer dette grensesnittet, må vi skille erklæringen vår, dvs. navneområdet den.

Det er her vi bruker et indre grensesnitt hvis vi ikke vil ha et nytt navn som Kundeliste.

Vi holdt også to relaterte grensesnitt sammen, noe som forbedrer innkapsling.

Til slutt kan vi fortsette med implementeringen av det:

offentlig klasse CommaSeparatedCustomers implementerer Customer.List {// ...}

3. Konklusjon

Vi så raskt på indre grensesnitt i Java.

Som alltid kan kodeeksempler bli funnet på GitHub.


$config[zx-auto] not found$config[zx-overlay] not found