U bilo kojem programskom jeziku, apstrakcija Podrazumijeva skrivanje nebitnih detalja od korisnika kako bi se usredotočio samo na bitne detalje kako bi se povećala učinkovitost i smanjila složenost. U Javi se apstrakcija postiže pomoćuapstraktne klase i metode. Upoznajmo više o apstraktnoj metodi u .
pl sql tutorial s primjerima
Teme o kojima se raspravlja u ovom članku su sljedeće:
- Što je sažetak?
- Što je apstraktna metoda u Javi?
- Ket značajke apstraktne metode
- Primjer programa: Apstraktna metoda u Javi
- Sučelje u Javi
Što je sažetak?
U bilo kojem , klasa koja se deklarira s ključnom riječi sažetak je poznat kao apstraktna klasa. An apstraktni razred obuhvaća zajedničke karakteristike podrazreda i može ih sadržavati, ali i ne mora apstraktna metoda . Ne može se instancirati, ali se može koristiti kao superklasa samo u svojim podrazredima.
U nastavku su navedene neke ključne točke u vezi sa apstraktnom nastavom:
- Apstraktni čas može imati konstruktori i statičke metode
- Može imati konačne metode , prisiljavaju podrazred da ne mijenja tijelo metode
- Apstraktnu klasu možete koristiti nasljeđivanjem iz druge klase, a zatim u njoj pružiti implementacije apstraktnih metoda
- Ako apstraktna klasa nema implementaciju metode, uvijek je bolje koristiti sučelje
Klasa proglašena apstraktnom može uključivati ili ne uključivati apstraktne metode. Ali, što je zapravo apstraktna metoda?
Što je apstraktna metoda?
Metoda deklarirana bez tijela (bez provedbe)unutar apstraktne klase nalazi se apstraktna metoda. Drugim riječima, ako želite a razred da sadrži određenu metodu, ali želite da stvarnu implementaciju te metode određuju podređeni razredi, tada možete deklarirati metodu u nadređenoj klasi kao apstraktnu.
Evo kako apstraktna metoda izgleda u Javi:
apstraktno javno prazno stanište ()
Ključne značajke apstraktne metode
Dolje su navedene ključne značajke apstraktne metode:
- Apstraktne metode nemaju implementaciju (tijelo), one samo imaju potpis metode kao što je prikazano u gornjem primjeru
- Ako klasa ima apstraktnu metodu, treba je proglasiti apstraktnom, obrnuto nije istina
- Umjesto kovrčavih zagrada, apstraktna metoda na kraju će imati zarez ()
- Ako je a redovna nastava proširuje apstraktnu klasu, tada klasa mora implementirati sve apstraktne metode te klase ili je također treba proglasiti apstraktnom
Primjer programa: Apstraktna metoda u Javi
Pogledajte primjer programa kako biste shvatili kako se apstrakcija postiže apstraktnim klasama i apstraktnim metodama. Pogledajte.
paket MyPackage // apstraktna klasa sažetak klase Animal {String AnimalName = '' Animal (naziv niza) {this.AnimalName = name} // deklarirati apstraktne metode // ima zadanu implementaciju javna void BasicInfo (detalji niza) {System. out.println (this.AnimalName + '' + detalji)} // apstraktne metode koje će se // implementirati u svojim podrazredima (abstraktima) javno prazno stanište () apstraktno javno prazno disanje ()} klasa Zemaljski proteže se Životinja {// konstruktor Zemaljski (naziv niza) {super (ime)} @Preuzmi javno prazno stanište () {System.out.println ('ostavi na kopnu i')} @Preuzmi javno prazno disanje () {System.out.println ('respire kroz pluća ili dušnik. ')}} klasa Aquatic proširuje Animal {// konstruktor Aquatic (naziv niza) {super (ime)} @ Nadjačaj javno prazno stanište () {System.out.println (' Ostavlja u vodi i ') } @Override javno void disanje () {System.out.println ('disanje kroz škrge ili njihovu kožu.')}} Class AbstractClassDemo {public static voi d main (String [] args) {// stvaranje objekta zemaljske klase // i korištenje reference klase Animal. Životinjski objekt1 = novi zemaljski ('ljudi') objekt1.BasicInfo ('su kopnena bića, oni') object1.habitat () object1.respiration () System.out.println ('') // stvaranje objekata klase kruga Animal object2 = new Aquatic ('Fishes') object2.BasicInfo ('su vodena bića, ona') object2.habitat () object2.respiration ()}}
Izlaz:
Metoda Osnovne informacije () je koju koriste obojica Zemaljski i Vodeni razreda. Metode stanište() i disanje() su apstraktne metode i nemaju nikakvu implementaciju, samo potpis. Zemaljski i Vodeni razredi moraju osigurati vlastitu provedbu obje ove metode. Također, primijetite da obje metode počinju s ključnom riječi sažetak . U ovom trenutku možda se pitate kako je apstraktni razred različit od sučelje .
Sučelje u Javi
Drugi način postizanja apstrakcija u Javi je pomoću sučelja . Sučelje je skup apstraktnih metoda, ono nema nikakvih konkretnih rezultata , za razliku od apstraktne klase. Ali za razliku od apstraktne klase, sučelje pruža potpunu apstrakciju u Javi. Može imati i metode i varijable poput klase. Međutim, metode deklarirane u sučelju su prema zadanim postavkama apstraktne.
Apstraktne klase i sučelja dva su glavna gradivna blokaod . Iako se oba primarno koriste za apstrakciju, međusobno se vrlo razlikuju i ne mogu se koristiti naizmjenično.
To nas dovodi do kraja ovog članka 'Apstraktna metoda u Javi'. Obradio sam jedan od najčešće pitanih , koji je apstraktna klasa u Javi.
Obavezno vježbajte što je više moguće i vratite svoje iskustvo.
Pogledajte Edureka, pouzdane tvrtke za internetsko učenje s mrežom od više od 250 000 zadovoljnih učenika raširenih širom svijeta. Imate pitanje za nas? Molimo vas da ga spominjete u odjeljku za komentare ove 'Apstraktne metode u Javi' članka i javit ćemo vam se u najkraćem mogućem roku.