Vodič za unutarnja sučelja u Javi
1. Uvod
U ovom ćemo kratkom vodiču pogledati unutarnja sučelja u Javi. Uglavnom se koriste za:
- rješavanje problema s razmakom imena kada sučelje ima zajednički naziv
- sve veća inkapsulacija
- povećanje čitljivosti grupiranjem povezanih sučelja na jednom mjestu
Poznati primjer je Ulazak sučelje koje je deklarirano unutar Karta sučelje. Definirano na ovaj način, sučelje nije u globalnom opsegu i na njega se navodi kao Karta.Ulaz razlikujući ga od ostalih Ulazak sučelja i uspostavljanje veze s Karta očito.
2. Unutarnja sučelja
Po definiciji, deklaracija unutarnjeg sučelja događa se u tijelu drugog sučelja ili klase.
Oni su implicitno javni i statični, kao i njihova polja kada su deklarirana u drugom sučelju (slično deklaracijama polja u sučeljima najviše razine), a mogu se implementirati bilo gdje:
javno sučelje Kupac {// ... Popis sučelja {// ...}}
Unutarnja sučelja deklarirana u drugoj klasi također su statična, ali mogu imati specifikatore pristupa koji mogu ograničiti gdje se mogu implementirati:
javna klasa kupac {popis javnih sučelja {void add (kupac kupac); String getCustomerNames (); } // ...}
U gornjem primjeru imamo a Popis sučelje koje će poslužiti kao prijavljivanje nekih operacija na popisu Kupci kao što je dodavanje novih, dobivanje a Niz zastupanje i tako dalje.
Popis je prevladavajući naziv, a za rad s drugim knjižnicama koje definiraju ovo sučelje, moramo odvojiti našu deklaraciju, tj. prostor imena to.
Ovdje koristimo unutarnje sučelje ako ne želimo ići s novim imenom poput Popis kupaca.
Također smo držali dva povezana sučelja koja poboljšavaju enkapsulaciju.
Konačno, možemo nastaviti s njegovom primjenom:
javna klasa CommaSeparatedCustomers implementira Customer.List {// ...}
3. Zaključak
Kratko smo pogledali unutarnja sučelja u Javi.
Kao i uvijek, uzorci koda mogu se naći na GitHubu.