Elementi Java modela objekta: sažetak klase, sučelje

Glavna ideja apstraktne klase leži u sljedećoj tezi: ponekad nisu potrebne pripremne nastave, ali u "sirovom" obliku. Takvi se praznici ne mogu izravno upotrijebiti (stvoriti primjerke).java sažetak klase

Koji je abecedni razred u Javi?

Razmotrimo još jedan primjer. U Javi se nalazi apstraktna klasa Kalendara u Java.util paketu. To ne provede određeni kalendar, koji se koristi, na primjer, u zapadnoj i istočnoj Europi, Kini, Sjevernoj Koreji, Tajlandu, itd, ali ona ima mnoge korisne značajke, kao što su dodavanje nekoliko dana na određeni datum: .. Ove funkcije su potrebne za bilo koju provedba kalendara. Ne možete mijenjati primjer iz apstraktne klase.

Sažetak klase, Java apstraktne metode

Recimo da trebate razviti nekoliko grafičkih elemenata, na primjer, geometrijskih oblika: krug, pravokutnik, zvijezda itd. I tu je i kontejner koji ih privlači. Svaka komponenta ima drugačiji izgled, pa je odgovarajuća metoda (neka se naziva bojom) implementira drugačije. Međutim, svaka komponenta ima mnogo sličnosti: .. Lik treba uključiti u okvir može imati boju da bude vidljivo i nevidljivo, itd Drugim riječima, potrebno je stvoriti roditelj klasa za sve ove slike, gdje će svaka komponenta naslijediti opća svojstva.apstraktne klase apstraktne metode java Ali što je s bojom? Uostalom, roditeljska klasa nema vizualni prikaz. Ako deklarirate metodu boje u svakoj klasi neovisno, morat ćete analizirati koja se komponenta obrađuje, a zatim baciti tip. Stoga, metoda treba biti deklarirana kao apstraktna u roditeljskoj klasi: postavite zaglavlje metode bez tijela. A svaka izvedena klasa će opisati svoje tijelo. U Java apstraktni razred mogu zaključiti apstraktne metode.

Ako klasa ima apstraktne metode, tada je klasa apstraktna. Prije nego što se klasa riječi stavi apstraktna riječ, u zaglavlje metode - previše. Nakon glave ove metode, trebate staviti točku sa zarezom. U Javi, abstraktna klasa ne može isticati primjere. Ako želimo zabraniti njihovo stvaranje, čak i ako klasa nema apstraktne metode, onda se klasa može proglasiti sažetakom. Ali ako klasa ima barem jednu apstraktnu metodu, onda klasa mora biti apstraktna. Nemoguće je da klasa bude i apstraktna, konačna i metoda. Metoda ne može biti apstraktna, privatna, statična, izvorna. Da bi se klase nasljednika proglašavalo ne-apstraktnim i stvorilo svoje primjere, moraju provesti sve roditeljske apstraktne metode. Sam klasa može koristiti svoje apstraktne metode.

primjer:

  • abstraktni razred AClass {
  • javna apstraktna netočna metoda (int a) -
  • }
  • klasa BClass proširuje AClass {
  • javna nevidljiva metoda (int a) {
  • // tijelo
  • }

Varijable tipa sažetka klase su dopuštene. Mogu se upućivati ​​na ne-apstraktni potomak ove klase ili biti nul.

Sučelja u Javi - alternativa višestrukom nasljeđivanju

sučelja i apstraktne java klase



Java nema više nasljedstva, jer tada postoje određeni problemi. Klasa ne može naslijediti više klasa. Ali može implementirati nekoliko sučelja.

Sučelja i apstraktne klase Java - pojmovi su slični, ali nisu isti. Sučelje se može proglasiti javnim, onda je dostupno svima, ili ne možete navesti modifikaciju javnosti, a sučelje je dostupno samo unutar paketa. Apstacijska ključna riječ nije potrebna jer je sučelje već sažetak, ali možete ga odrediti.

Deklaracija sučelja

razlika između apstraktne klase i java sučelja

Počinje s zaglavljem i prvo se može pratiti ključna riječ, a zatim riječ sučelje. Tada se može proširiti riječ i nabrojati sučelja iz kojih se ovo nasljeđuje. Nije dopušteno ponavljanje, a također je nemoguće da je odnos nasljeđivanja cikličan. Zatim dolazi sučelje tijelo, zatvoreno u braces. Polja elementa se deklariraju u tijelu sučelja: konstantna polja i apstraktne metode. Sva su polja javna konačna statična - svi modifikatori su neobavezni. Sve se metode smatraju javnim sažetkom - takvi se modifikatori također mogu navesti. Sada je dovoljno dovoljno govoriti o razlici apstraktnog razreda iz Java sučelja.

  • javno sučelje AI proširuje B, C, D {
  • // tijelo
  • }

Da biste proglasili klase kao nasljednika sučelja, trebate upotrijebiti ključne alate:

  • klasa AClass implementira BI, CI, DI {}

To jest, ako je naziv sučelja specificiran u deklaraciji klase nakon implementacije, tada ga klasa provodi. Nasljednici ove klase nasljeđuju svoje elemente, tako da ih i implementiraju.

Varijable tipa sučelja također su dopuštene. Oni se mogu odnositi na vrstu klase koja implementira ovo sučelje ili nul. Takve varijable imaju sve elemente klase Object, jer se objekti generiraju iz klase, a oni zauzvrat nasljeđuju iz klase Object.

U ovom smo članku pogledali neke elemente Java modela objekta - apstraktne klase, apstraktne metode, sučelja.

Dijelite na društvenim mrežama:

Povezan
Prvi Java program je Hello WorldPrvi Java program je Hello World
Java Island Riddle: Zanimljive i korisne informacije za turisteJava Island Riddle: Zanimljive i korisne informacije za turiste
Sažetak slika kao način da odražava vaš unutarnji svijetSažetak slika kao način da odražava vaš unutarnji svijet
Sažetak crteža - kako i što ga možete izvući?Sažetak crteža - kako i što ga možete izvući?
Cigare `Java`: opis i vrsteCigare `Java`: opis i vrste
Java polja žica. Razvrstavanje polja u Java. Dvodimenzionalni Java rasporedJava polja žica. Razvrstavanje polja u Java. Dvodimenzionalni Java raspored
Java: regularni izrazi, posebni znakoviJava: regularni izrazi, posebni znakovi
Programiranje: Java. Vrste podatakaProgramiranje: Java. Vrste podataka
Sažetak klasa i metoda: opis, karakteristike i značajke. Koja je razlika između apstraktne klase i…Sažetak klasa i metoda: opis, karakteristike i značajke. Koja je razlika između apstraktne klase i…
Java integrirano razvojno okruženjeJava integrirano razvojno okruženje
» » Elementi Java modela objekta: sažetak klase, sučelje
LiveInternet