Mikä on abstraktin menetelmän käyttö Java-ohjelmassa?



Tämä artikkeli Java-abstraktista menetelmästä auttaa sinua oppimaan abstraktion saavuttamisen, kun käytät abstraktien luokkien ja menetelmien ohjelmointia Javassa

Millä tahansa ohjelmointikielellä, abstraktio tarkoittaa merkityksettömien yksityiskohtien piilottamista käyttäjältä keskittymään vain olennaisiin yksityiskohtiin tehokkuuden lisäämiseksi ja siten monimutkaisuuden vähentämiseksi. Java-tilassa abstraktio saavutetaan käyttämälläabstraktit luokat ja menetelmät. Opitaan lisää abstraktista menetelmästä .

Tässä artikkelissa käsitellään seuraavia aiheita:





java c ++ python

Mikä on abstrakti luokka?

Missä tahansa , luokka, joka ilmoitetaan avainsanalla abstrakti tunnetaan abstraktina luokana. An abstrakti luokka kuvaa alaluokkien yleisiä ominaisuuksia ja voi sisältää tai olla sisältämättä niitä abstrakti menetelmä . Sitä ei voida instantisoida, mutta sitä voidaan käyttää vain yläluokkana sen alaluokkien kautta.

Alla on lueteltu joitain keskeisiä kohtia abstraktin luokan suhteen:



  • Abstraktilla luokalla voi olla rakentajat ja staattiset menetelmät
  • Se voi olla lopulliset menetelmät , ne pakottavat alaluokan olemaan muuttamatta menetelmän runkoa
  • Voit käyttää abstraktia luokkaa perimällä sen toisesta luokasta ja tarjoamalla sitten toteutuksia sen abstrakteille menetelmille
  • Jos abstraktilla luokalla ei ole menetelmän toteutusta, se on aina parempi käyttää käyttöliittymä

Abstraktiksi julistettu luokka voi sisältää abstrakteja menetelmiä tai ei. Mutta mikä on abstrakti menetelmä?

Mikä on abstrakti menetelmä?

Menetelmä, joka on ilmoitettu ilman elintä (ei toteutusta)abstraktin luokan sisällä on abstrakti menetelmä. Toisin sanoen, jos haluat a luokassa sisältää tietyn menetelmän, mutta haluat, että menetelmän varsinainen toteutus määritetään alaluokkien perusteella, voit julistaa menetelmän vanhempaluokassa abstraktina.

kuinka nostaa luku voimaksi jaavassa

Näin abstrakti menetelmä näyttää Java:



abstrakti julkinen tyhjä elinympäristö ()

Abstraktin menetelmän pääpiirteet

Alla on lueteltu abstraktin menetelmän tärkeimmät ominaisuudet:

  • Abstrakteilla menetelmillä ei ole toteutusta (runkoa), vaan niillä on vain metodin allekirjoitus, kuten yllä olevassa esimerkissä on esitetty
  • Jos luokassa on abstrakti menetelmä, se tulisi julistaa abstraktiksi, päinvastoin, ei ole totta
  • Kihara-aaltosulkeiden sijasta abstraktin menetelmän lopussa on puolipiste ()
  • Jos säännöllinen luokka laajentaa abstraktia luokkaa, luokan on sitten toteutettava kaikki kyseisen luokan abstraktit menetelmät tai se on julistettava myös abstraktiksi

Esimerkkiohjelma: Abstrakti menetelmä Java-muodossa

Tutustu esimerkkiohjelmaan ymmärtääksesi, kuinka abstraktio saavutetaan abstraktien luokkien ja abstraktien menetelmien avulla. Katsokaa.

package MyPackage // abstrakti luokka abstrakti luokka Animal {String AnimalName = '' Animal (String name) {this.AnimalName = name} // julista ei-abstraktit menetelmät // sillä on oletusarvoinen julkinen void BasicInfo (String details) {System. out.println (this.AnimalName + '' + yksityiskohdat)} // abstraktit menetelmät, jotka // toteuttavat sen alaluokka (t) abstrakti public void elinympäristö () abstrakti public void hengitys ()} -luokka Terrestrial extends Animal {// rakentaja Terrestrial (merkkijono) {super (nimi)} @Override public void habitat () {System.out.println ('leave on land and')} @Override public void hengitys () {System.out.println ('respire keuhkojen tai henkitorven kautta. ')}} luokka Aquatic ulottuu eläin {// konstruktori Aquatic (merkkijono) {super (nimi)} @Override public void habitat () {System.out.println (' Se lähtee veteen ja ') } @Override public void respiration () {System.out.println ('hengitä kidusten tai ihon läpi.')}} Class AbstractClassDemo {public static voi d main (String [] args) {// luodaan maanpäällisen luokan objekti // ja käytetään eläinluokan viitteitä. Eläinobjekti1 = uusi maanpäällinen ('Ihmiset') esine1.BasicInfo ('ovat maanpäällisiä olentoja, ne') object1.habitat () object1.respiration () System.out.println ('') // luomalla ympyräluokan Animal objektit object2 = uusi vesieliö ('Fishes') object2.BasicInfo ('ovat vesieliöitä, he') object2.habitat () object2.hengitys ()}}

Tuotos:

Menetelmä BasicInfo () on jota molemmat käyttävät Maanpäällinen ja Vesi luokat. Menetelmät elinympäristö () ja hengitys () ovat abstrakteja menetelmiä, eikä niillä ole mitään toteutusta, vain allekirjoitus. Maanpäällinen ja Vesi luokkien on tarjottava oma toteutus molemmille menetelmille. Huomaa myös, että molemmat menetelmät alkavat avainsanalla abstrakti . Tässä vaiheessa saatat miettiä, miten on abstrakti luokka erilainen kuin käyttöliittymä .

Käyttöliittymä Java-käyttöjärjestelmässä

Toinen tapa saavuttaa abstraktio Java on käyttämällä rajapinnat . Käyttöliittymä on kokoelma abstrakteja menetelmiä, sillä ei ole mitään konkreettista , toisin kuin abstrakti luokka. Mutta toisin kuin abstrakti luokka, käyttöliittymä tarjoaa täydellisen abstraktion Java-muodossa. Sillä voi olla sekä menetelmiä että muuttujia aivan kuten luokassa. Rajapinnassa ilmoitetut menetelmät ovat kuitenkin oletusarvoisesti abstrakteja.

Abstraktit luokat ja rajapinnat ovat kaksi tärkeintä rakennuspalikkaan . Vaikka molempia käytetään ensisijaisesti abstraktioon, ne ovat hyvin erilaisia ​​toisistaan ​​eikä niitä voida käyttää keskenään.

ero luokan ja käyttöliittymän välillä

Tämä tuo meidät tämän 'Abstract Method in Java' -artikkelin loppuun. Olen katsonut yhden yleisimmin kysytystä , joka on abstrakti luokka Javassa.

Varmista, että harjoittelet mahdollisimman paljon ja palauta kokemuksesi.

Katso Edureka, luotettava verkko-oppimisyritys, jolla on yli 250 000 tyytyväisen oppijan verkosto, joka levisi ympäri maailmaa. Onko sinulla kysymys meille? Mainitse se tämän ”Abstract Method in Java” -kommenttiosassa. artikkeli ja palaamme sinuun mahdollisimman pian.