logo

Java OOPs -konseptit

  1. Olio-ohjelmointi
  2. OOP:iden etu prosessisuuntautuneeseen ohjelmointikieleen verrattuna
  3. Ero oliopohjaisen ja oliopohjaisen ohjelmointikielen välillä.

Tällä sivulla opimme OOP:n perusteista. Olio-ohjelmointi on paradigma, joka tarjoaa monia käsitteitä, kuten perinnöstä , tietojen sitominen , polymorfismi , jne.

alku Sitä pidetään ensimmäisenä olio-ohjelmointikielenä. Ohjelmointiparadigma, jossa kaikki esitetään objektina, tunnetaan todella olio-ohjelmointikielenä.

Jutustelu Sitä pidetään ensimmäisenä todella olio-ohjelmointikielenä.

Suosittuja oliokieliä ovat Java , C# , PHP , Python , C++ , jne.

Olio-ohjelmoinnin päätavoite on toteuttaa reaalimaailman entiteettejä, kuten objektia, luokat, abstraktio, periytyminen, polymorfismi jne.

bellfordin algoritmi

OOPs (olio-ohjelmointijärjestelmä)

Esine tarkoittaa todellista kokonaisuutta, kuten kynää, tuolia, pöytää, tietokonetta, kelloa jne. Olio-ohjelmointi on metodologia tai paradigma ohjelman suunnitteluun luokkien ja objektien avulla. Se yksinkertaistaa ohjelmistojen kehitystä ja ylläpitoa tarjoamalla joitain käsitteitä:

Näiden käsitteiden lisäksi oliosuuntautuneessa suunnittelussa käytetään joitain muita termejä:

  • Kytkentä
  • Koheesio
  • yhdistys
  • Aggregointi
  • Sävellys
Java OOPs -konseptit

Esine

Java-objekti

Mikä tahansa entiteetti, jolla on tila ja käyttäytyminen, tunnetaan objektina. Esimerkiksi tuoli, kynä, pöytä, näppäimistö, pyörä jne. Se voi olla fyysinen tai looginen.

Objekti voidaan määritellä luokan esiintymäksi. Objekti sisältää osoitteen ja vie jonkin verran tilaa muistista. Objektit voivat kommunikoida tietämättä toistensa datan tai koodin yksityiskohtia. Ainoa välttämätön asia on hyväksytyn viestin tyyppi ja objektien palauttaman vastauksen tyyppi.

Esimerkki: Koira on esine, koska sillä on tiloja, kuten väri, nimi, rotu jne. sekä käyttäytymismalleja, kuten hännän heilutus, haukkuminen, syöminen jne.

Luokka

Kokoelma esineitä kutsutaan luokaksi. Se on looginen kokonaisuus.

Luokka voidaan määritellä myös suunnitelmaksi, josta voit luoda yksittäisen objektin. Luokka ei vie tilaa.

Perintö

Kun yksi objekti hankkii kaikki emoobjektin ominaisuudet ja käyttäytymiset , se tunnetaan perintönä. Se tarjoaa koodin uudelleenkäytettävyyden. Sitä käytetään ajonaikaisen polymorfismin saavuttamiseen.

Polymorfismi Javassa

Polymorfismi

Jos yksi tehtävä suoritetaan eri tavoin , se tunnetaan polymorfismina. Esimerkiksi: vakuuttaa asiakas eri tavalla, piirtää jotain, esimerkiksi muoto, kolmio, suorakulmio jne.

Javassa käytämme menetelmän ylikuormitusta ja menetelmän ohittamista polymorfismin saavuttamiseksi.

Toinen esimerkki voi olla puhua jotain; esimerkiksi kissa puhuu miau, koira haukkuu vau jne.

Abstraktio

Sisäisten yksityiskohtien piilottaminen ja toimivuuden näyttäminen tunnetaan abstraktiona. Esimerkiksi puhelu, emme tiedä sisäistä käsittelyä.

Javassa käytämme abstraktia luokkaa ja käyttöliittymää abstraktion saavuttamiseksi.

Kapselointi Java OOPs -konsepteihin

Kapselointi

Koodin ja datan sitominen (tai kääriminen) yhteen yksikköön tunnetaan kapseloimisena . Esimerkiksi kapseli, se on kääritty erilaisiin lääkkeisiin.

Java-luokka on esimerkki kapseloinnista. Java bean on täysin kapseloitu luokka, koska kaikki datajäsenet ovat täällä yksityisiä.

Kytkentä

Kytkentä viittaa toisen luokan tietoon tai informaatioon tai riippuvuuteen. Se syntyy, kun luokat ovat tietoisia toisistaan. Jos luokassa on toisen luokan yksityiskohdat, on olemassa vahva kytkentä. Javassa käytämme yksityisiä, suojattuja ja julkisia muokkaajia näyttämään luokan, menetelmän ja kentän näkyvyystason. Voit käyttää rajapintoja heikompaan kytkentään, koska konkreettista toteutusta ei ole.

Koheesio

Koheesiolla tarkoitetaan komponentin tasoa, joka suorittaa yhden hyvin määritellyn tehtävän. Yksittäinen hyvin määritelty tehtävä tehdään erittäin yhtenäisellä menetelmällä. Heikosti koheesiivinen menetelmä jakaa tehtävän erillisiin osiin. Java.io-paketti on erittäin yhtenäinen paketti, koska siinä on I/O-luokkia ja käyttöliittymä. Paketti java.util on kuitenkin heikosti yhtenäinen paketti, koska siinä on toisiinsa liittymättömiä luokkia ja rajapintoja.

yhdistys

Assosiaatio edustaa objektien välistä suhdetta. Tässä yksi objekti voidaan liittää yhteen tai useisiin objekteihin. Objektien välillä voi olla neljä assosiaatiotyyppiä:

  • Yksi yhteen
  • Yksi moniin
  • Monet yhdelle ja
  • Monelta Monelle

Ymmärretään suhdetta reaaliaikaisten esimerkkien avulla. Esimerkiksi yhdellä maalla voi olla yksi pääministeri (yksi yhteen) ja pääministerillä voi olla useita ministereitä (yksi moniin). Lisäksi monilla kansanedustajilla voi olla yksi pääministeri (useita yhteen), ja monilla ministereillä voi olla useita osastoja (monista useisiin).

Assosiaatio voi olla yksisuuntaista tai kaksisuuntaista.

Aggregointi

Yhdistäminen on tapa saavuttaa assosiaatio. Aggregaatio edustaa suhdetta, jossa yksi objekti sisältää muita objekteja osana tilaansa. Se edustaa objektien välistä heikkoa suhdetta. Sitä kutsutaan myös nimellä a has-a suhde Javassa. Kuten, perintö edustaa on suhdetta. Se on toinen tapa käyttää esineitä uudelleen.

Sävellys

Koostumus on myös tapa saavuttaa assosiaatio. Koostumus edustaa suhdetta, jossa yksi objekti sisältää muita objekteja osana tilaansa. Sisältävän objektin ja riippuvaisen objektin välillä on vahva suhde. Se on tila, jossa sisältävillä objekteilla ei ole itsenäistä olemassaoloa. Jos poistat pääobjektin, kaikki aliobjektit poistetaan automaattisesti.


OOP:iden etu prosessisuuntautuneeseen ohjelmointikieleen verrattuna

1) OOPs helpottaa kehitystä ja ylläpitoa, kun taas prosessisuuntautuneessa ohjelmointikielessä ei ole helppoa hallita, jos koodi kasvaa projektin koon kasvaessa.

2) OOPs tarjoaa tietojen piilotuksen, kun taas proseduurisuuntautuneessa ohjelmointikielessä globaaleihin tietoihin pääsee käsiksi mistä tahansa.

Globaalit tiedot

Kuva: Tietojen esitys proseduurisuuntautuneessa ohjelmoinnissa


Objektitiedot

Kuva: Tietojen esitys olio-ohjelmoinnissa

3) OOPs tarjoaa mahdollisuuden simuloida tosielämän tapahtumia paljon tehokkaammin. Voimme tarjota ratkaisun todelliseen tekstiongelmaan, jos käytämme olio-ohjelmointikieltä.

heittää merkkijono int

Mitä eroa on olio-ohjelmointikielen ja oliopohjaisen ohjelmointikielen välillä?

Oliopohjainen ohjelmointikieli noudattaa kaikkia OOP:n ominaisuuksia paitsi perinnöllistä. JavaScript ja VBScript ovat esimerkkejä oliopohjaisista ohjelmointikielistä.



Tiedätkö?
  • Voimmeko ylikuormittaa päämenetelmää?
  • Java-konstruktori palauttaa arvon, mutta mitä?
  • Voimmeko luoda ohjelman ilman päämenetelmää?
  • Mitkä ovat kuusi tapaa käyttää tätä avainsanaa?
  • Miksi Java ei tue moniperintöä?
  • Miksi käyttää yhdistämistä?
  • Voimmeko ohittaa staattisen menetelmän?
  • Mikä on kovarianttipalautustyyppi?
  • Mitkä ovat Java-superavainsanan kolme käyttötapaa?
  • Miksi käyttää ilmentymän alustuslohkoa?
  • Mikä on tyhjän loppumuuttujan käyttö?
  • Mikä on merkintä tai merkitty käyttöliittymä?
  • Mikä on ajonaikainen polymorfismi tai dynaaminen menetelmän lähetys?
  • Mitä eroa on staattisen ja dynaamisen sitomisen välillä?
  • Kuinka downcasting on mahdollista Javassa?
  • Mikä on yksityisen rakentajan tarkoitus?
  • Mitä on objektikloonaus?
Mitä opimme OOPs Conceptsista?
  • OOP:n etu
  • Nimeämissopimus
  • Objekti ja luokka
  • Menetelmän ylikuormitus
  • Rakentaja
  • staattinen avainsana
  • tämä avainsana kuudella käyttökerralla
  • Perintö
  • Aggregointi
  • Menetelmän ohittaminen
  • Kovariantin palautustyyppi
  • super avainsana
  • Instanssin alustuslohko
  • viimeinen avainsana
  • Abstrakti luokka
  • Käyttöliittymä
  • Ajonaikainen polymorfismi
  • Staattinen ja dynaaminen sidonta
  • Downcasting instanceof-operaattorilla
  • Paketti
  • Access Modifiers
  • Kapselointi
  • Objektin kloonaus