Mikä on Java-virtuaalitoiminto?



Tässä artikkelissa käsitellään virtuaalitoiminnon käsitettä Java-sovelluksessa sen sovelluksilla polymorfismissa ja toimintojen kutsumisella ajon aikana esimerkkien avulla.

Java on joka tukee sellaisia ​​käsitteitä kuin polymorfismi, perintö, abstraktio jne. Nämä OOP: n käsitteet pyörivät luokat , esineitä ja jäsentoiminnot. Virtuaalifunktio on yksi sellainen käsite, joka auttaa ajonaikaisessa polymorfisuudessa. Tässä blogissa opimme virtuaalitoiminnosta . Tässä artikkelissa käsitellään seuraavia aiheita.

Mikä on Java-virtuaalitoiminto?

Virtuaalitoiminnon käyttäytyminen voi olla ohitettu periytyvän luokan funktion kanssa samalla nimellä. Se määritellään periaatteessa perusluokassa ja ohitetaan perinnöllisessä luokassa.





Java: n virtuaalitoiminnon odotetaan määrittyvän . Voimme kutsua virtuaalitoimintoa viittaamalla johdetun luokan objektiin perusluokan viitteen tai osoittimen avulla.

Jokainen Javan ei-staattinen menetelmä on oletusarvoisesti virtuaalinen menetelmä. Java: lla ei ole virtuaalista avainsanaa, kuten C ++ , mutta voimme määritellä ne ja käyttää niitä käsitteisiin, kuten ajonaikainen polymorfismi.



Esimerkki virtuaalitoiminnoista

Katsotaanpa esimerkki ymmärtääksemme kuinka voimme käyttää virtuaalisia toimintoja Java-sovelluksessa.

luokan ajoneuvo {void make () {System.out.println ('heavy duty')}} julkisen luokan kuorma-autot laajentavat ajoneuvoa {void make () {System.out.println ('Transport vehicle for heavy duty')} public static void main (String args []) {Ajoneuvo ob1 = uudet kuorma-autot () ob1.make ()}}
 Tuotos: Kuljetusajoneuvo raskaaseen käyttöön

Jokainen Java-ei-staattinen menetelmä on virtuaalitoiminto paitsi lopullinen ja yksityiset menetelmät . Menetelmiä, joita ei voida käyttää polymorfismiin, ei pidetä virtuaalisena toimintona.

kuinka käyttää sqlite-selainta

TO ei pidetä virtuaalisena funktiona, koska staattinen menetelmä on sidottu itse luokkaan. Joten emme voi kutsua staattista menetelmää objektin nimestä tai luokasta . Silloinkin kun ohitamme staattisen menetelmän, se ei vastaa reseptin polymorfismia.



Virtuaalinen toiminto rajapinnoilla

Kaikki Java-rajapinnat ovat virtuaalisia, ne luottavat toteutusluokkiin tarjotakseen menetelmien toteutuksia. Suoritettava koodi valitaan ajon aikana. Tässä on yksinkertainen esimerkki ymmärryksen parantamiseksi.

käyttöliittymä Auto {void ApplyBrakes ()} -rajapinta Audi toteuttaa auton {void ApplyBrakes () {System.out.println ('taukoja käytetty')}}

Tässä ApplyBreaks () on virtuaalinen, koska rajapintojen toiminnot on suunniteltu ohitettaviksi.

java mikä on instanssimuuttuja

Puhdas virtuaalitoiminto

Pure virtual -toiminto on virtuaalinen toiminto, johon meillä ei ole toteutuksia. Abstraktia menetelmää Java: ssa voidaan pitää puhtaana virtuaalisena toimintona. Otetaan esimerkki ymmärtääksemme tämän paremmin.

abstrakti luokka Koira {final void bark () {System.out.println ('woof')} abstrakti void jump () // tämä on puhdas virtuaalitoiminto} -luokka MyDog laajentaa koiraa {void jump () {System.out.println ('Hyppää ilmassa')}} public class Runner {public static void main (String args []) {Koira ob1 = uusi MyDog () ob1.jump ()}}
 Tuotos: Hyppää ilmassa

Näin virtuaalitoimintoa voidaan käyttää abstraktin luokan kanssa.

Run-Time-polymorfismi

Ajonaikainen polymorfismi on silloin, kun kutsu ohitettuun menetelmään ratkaistaan ​​ajon aikana eikä kokoamisaika . Ohitettu menetelmä kutsutaan perusluokan referenssimuuttujan kautta.

luokka Edureka {public void show () {System.out.println ('welcome to edureka')}} class Course laajentaa Edureka {public void show () {System.out.println ('Java Certification Program')} public static void main (String args []) {Edureka ob1 = uusi kurssi () ob1.show ()}}
 Tuotos: Java-sertifiointikurssi

Muistettavaa

  • Java-virtuaalitoimintoa varten ei tarvita nimenomaista ilmoitusta. Se on mikä tahansa että meillä on perusluokka ja määritelty uudelleen johdetussa luokassa samalla nimellä.

  • Perusluokan osoitinta voidaan käyttää viittaamaan johdetun luokan kohteeseen.

  • Ohjelman suorituksen aikana perusluokan osoitinta käytetään johdettujen luokkatoimintojen kutsumiseen.

    tulosta_r merkkijonoon

Tämä vie meidät tämän artikkelin loppuun, jossa olemme oppineet Java-virtuaalitoiminnosta. Toivon, että olet selvillä kaikesta, mitä sinulle on jaettu tässä opetusohjelmassa.

Jos pidit tämän artikkelin ”Java-virtuaalitoiminto” -kohdassa, tutustu artikkeliin luotettava verkko-oppimisyritys, jolla on yli 250 000 tyytyväisen oppijan verkosto, levinneenä ympäri maailmaa.

Autamme sinua matkasi jokaisessa vaiheessa ja keksimme opetussuunnitelman, joka on tarkoitettu opiskelijoille ja ammattilaisille, jotka haluavat olla Java-kehittäjiä. Kurssi on suunniteltu antamaan sinulle etumatka Java-ohjelmointiin ja kouluttamaan sekä ydin- että edistyneitä Java-käsitteitä sekä erilaisia Kuten Lepotila & .

Jos kohtaat kysyttävää, kysy rohkeasti 'Java-virtuaalitoiminto' -kommenttiosasta, ja tiimimme vastaa mielellään.