logo

Koncept objektno usmerjenega programiranja (OOP) v Javi

Kot že ime pove, se koncept objektno usmerjenega programiranja ali Java OOP nanaša na jezike, ki uporabljajo objekte pri programiranju, uporabljajo objekte kot primarni vir za implementacijo tega, kar se mora zgoditi v kodi. Gledalec ali uporabnik vidi predmete, ki izvajajo naloge, ki jih dodelite.

Cilj objektno usmerjenega programiranja je implementacija entitet iz resničnega sveta, kot so dedovanje, skrivanje, polimorfizem itd. V programiranju. Glavni cilj OOP je povezati podatke in funkcije, ki z njimi delujejo, tako da noben drug del kode ne more dostopati do teh podatkov, razen te funkcije.



Razpravljajmo o predpogojih s poliranjem konceptov deklaracije metod in posredovanja sporočil. Začenši z deklaracijo metode, je sestavljena iz šestih komponent:

  • Modifikator dostopa : Določa vrsta dostopa metode, tj. od kod je mogoče dostopati v vaši aplikaciji. V Javi obstajajo 4 vrste specifikatorjev dostopa:
    • javnost: Dostopno v vseh razredih v vaši aplikaciji.
    • zaščiten: Dostopen znotraj paketa, v katerem je definiran, in v njegovem podrazredi (vključno s podrazredi, prijavljenimi zunaj paketa) .
    • zasebno: Dostopen samo znotraj razreda, v katerem je definiran.
    • privzeto (deklarirano/definirano brez uporabe kakršnega koli modifikatorja): Dostopen znotraj istega razreda in paketa, znotraj katerega je definiran njegov razred.
  • Vrnitev vrste : Vrsta podatkov vrednosti, ki jo vrne metoda, ali void, če ne vrne vrednosti.
  • Ime metode : Pravila za imena polj veljajo tudi za imena metod, vendar je dogovor nekoliko drugačen.
  • Seznam parametrov : Seznam vhodnih parametrov, ločenih z vejicami, ki so definirani, pred njihovimi vrstami podatkov v oklepajih. Če parametrov ni, morate uporabiti prazne oklepaje ().
  • Seznam izjem : Izjeme, ki jih pričakujete od metode. Določite lahko te izjeme.
  • Telo metode : To je blok kode, zaprt med oklepaji, ki ga morate izvesti za izvedbo predvidenih operacij.

Posredovanje sporočil : Objekti med seboj komunicirajo tako, da drug drugemu pošiljajo in prejemajo informacije. Sporočilo za objekt je zahteva za izvedbo postopka in bo zato priklicalo funkcijo v prejemnem objektu, ki ustvari želene rezultate. Posredovanje sporočila vključuje določanje imena predmeta, imena funkcije in informacij, ki jih je treba poslati.



Master OOP v Javi Napišite čistejšo, bolj modularno kodo Java, ki jo je mogoče večkrat uporabiti, tako da zgradite osnovo v objektno usmerjenem programiranju z interaktivnim tečajem Educative Learn Objektno orientirano programiranje v Javi . Prijavite se na Educative.io s kodo GEEKI10 da prihranite 10 % pri naročnini.

Zdaj, ko smo pokrili osnovne predpogoje, bomo prešli na 4 stebre OOP, ki so naslednji. Toda začnimo z učenjem o različnih značilnostih objektno usmerjenega programskega jezika.

Koncepti OOPS so naslednji:

  1. Razred
  2. Objekt
  3. Metoda in prehod metode
  4. Stebri OOP-jev
    • Abstrakcija
    • Enkapsulacija
    • Dedovanje
    • Polimorfizem
      • Polimorfizem med prevajanjem
      • Polimorfizem izvajalnega časa



A razred je uporabniško definiran načrt ali prototip, iz katerega so ustvarjeni predmeti. Predstavlja nabor lastnosti ali metod, ki so skupne vsem objektom iste vrste. Z uporabo razredov lahko ustvarite več predmetov z enakim vedenjem, namesto da večkrat pišete njihovo kodo. To vključuje razrede za predmete, ki se v vaši kodi pojavljajo več kot enkrat. Na splošno lahko deklaracije razreda vključujejo te komponente v vrstnem redu:

  1. Modifikatorji : Razred je lahko javen ali ima privzeti dostop (Glejte to za podrobnosti).
  2. Ime razreda: Ime razreda se mora začeti z začetno črko, ki je po dogovoru velika.
  3. Superrazred (če obstaja): Ime nadrejenega razreda (superrazred), če obstaja, pred katerim je ključna beseda extends. Razred lahko razširi (podrazred) le enega nadrejenega.
  4. Vmesniki (če obstajajo): Seznam vmesnikov, ločenih z vejicami, ki jih izvaja razred, če obstajajo, pred njimi je ključna beseda implements. Razred lahko izvaja več kot en vmesnik.
  5. Telo: Telo razreda je obdano z oklepaji, { }.

Predmet je osnovna enota objektno orientiranega programiranja, ki predstavlja entitete iz resničnega življenja. Tipičen program Java ustvari veliko objektov, ki, kot veste, medsebojno delujejo s klicanjem metod. Objekti so tisti, ki izvajajo vašo kodo, so del vaše kode, ki je viden gledalcu/uporabniku. Objekt je v glavnem sestavljen iz:

  1. Država : Predstavljajo ga atributi predmeta. Odraža tudi lastnosti predmeta.
  2. Vedenje : Predstavljeno je z metodami objekta. Odraža tudi odziv predmeta na druge predmete.
  3. Identiteta : To je edinstveno ime, dano predmetu, ki mu omogoča interakcijo z drugimi predmeti.
  4. Metoda : Metoda je zbirka stavkov, ki izvajajo določeno nalogo in vrnejo rezultat klicatelju. Metoda lahko izvede določeno nalogo, ne da bi kar koli vrnila. Metode nam omogočajo ponovno uporabo kodo, ne da bi jo znova vtipkali, zato veljajo prihranke časa . V Javi mora biti vsaka metoda del nekega razreda, ki se razlikuje od jezikov, kot je C , C++ , in Python .

razred in objekti en preprost javanski program:

Java
public class GFG {    static String Employee_name;  static float Employee_salary;  static void set(String n, float p) {  Employee_name = n;  Employee_salary = p;  }  static void get() {  System.out.println('Employee name is: ' +Employee_name );  System.out.println('Employee CTC is: ' + Employee_salary);  }  public static void main(String args[]) {  GFG.set('Rathod Avinash', 10000.0f);  GFG.get();  } }>

Izhod
Employee name is: Rathod Avinash Employee CTC is: 10000.0>

Zdaj pa razpravljajmo o 4 stebrih OOP-jev:

1. steber: abstrakcija

podatki Abstrakcija je lastnost, zaradi katere so uporabniku prikazane le bistvene podrobnosti. Trivialne ali nebistvene enote niso prikazane uporabniku. Primer: Na avto se gleda kot na avto in ne na njegove posamezne komponente.
Abstrakcijo podatkov lahko definiramo tudi kot postopek identifikacije le zahtevanih lastnosti predmeta, pri čemer se ne upoštevajo nepomembne podrobnosti. Lastnosti in obnašanje predmeta ga razlikujejo od drugih predmetov podobnega tipa in pomagajo pri razvrščanju/združevanju predmeta.

Razmislite o resničnem primeru moškega, ki vozi avto. Človek ve le, da bo s pritiskom na plin povečala hitrost avtomobila ali z zaviranjem ustavil avto, ne ve pa, kako se s pritiskom na plin hitrost dejansko poveča. Ne pozna notranjega mehanizma avtomobila ali izvedbe plinov, zavor itd. v avtomobilu. To je tisto, kar je abstrakcija.

V Javi je abstrakcija dosežena z vmesniki in abstraktni razredi . Z uporabo vmesnikov lahko dosežemo 100 % abstrakcijo.

Abstraktna metoda vsebuje le deklaracijo metode, ne pa tudi izvedbe.

Demonstracija abstraktnega razreda

Java
//abstract class abstract class GFG{  //abstract methods declaration  abstract void add();  abstract void mul();  abstract void div(); }>

2. steber: Enkapsulacija

Opredeljen je kot zajem podatkov v eno enoto. To je mehanizem, ki povezuje kodo in podatke, s katerimi manipulira. Drug način razmišljanja o enkapsulaciji je, da je to zaščitni ščit, ki preprečuje dostop do podatkov s kodo zunaj tega ščita.

  • Tehnično, v enkapsulacija , so spremenljivke ali podatki v razredu skriti pred vsemi drugimi razredi in do njih je mogoče dostopati samo prek katere koli funkcije članice razreda, v katerem so deklarirani.
  • Pri enkapsulaciji so podatki v razredu skriti pred drugimi razredi, kar je podobno temu skrivanje podatkov naredi. Torej se izraza enkapsulacija in skrivanje podatkov uporabljata izmenično.
  • Enkapsulacijo lahko dosežete tako, da vse spremenljivke v razredu razglasite kot zasebne in v razred napišete javne metode za nastavitev in pridobitev vrednosti spremenljivk.

Predstavitev enkapsulacije:

Java
//Encapsulation using private modifier  //Employee class contains private data called employee id and employee name class Employee {  private int empid;  private String ename; }>

3. steber: Dedovanje

Dedovanje je pomemben steber OOP (Object Oriented Programming). To je mehanizem v Javi, s katerim lahko en razred podeduje funkcije (polja in metode) drugega razreda. Z uporabo dosegamo dedovanje se razteza ključna beseda. Dedovanje je znano tudi kot je odnos.

Razpravljajmo o nekaterih pogosto uporabljenih pomembnih izrazih:

  • Superrazred: Razred, katerega značilnosti so podedovane, je znan kot nadrazred (znan tudi kot osnovni ali nadrejeni razred).
  • Podrazred: Razred, ki podeduje drugi razred, je znan kot podrazred (znan tudi kot izpeljani ali razširjeni ali podrejeni razred). Podrazred lahko doda svoja polja in metode poleg polj in metod nadrazreda.
  • Ponovna uporabnost: Dedovanje podpira koncept ponovne uporabnosti, tj. ko želimo ustvariti nov razred in že obstaja razred, ki vključuje nekaj kode, ki jo želimo, lahko naš novi razred izpeljemo iz obstoječega razreda. S tem ponovno uporabimo polja in metode obstoječega razreda.

Dokaz dedovanja:

Java
//base class or parent class or super class class A{  //parent class methods  void method1(){}  void method2(){} } //derived class or child class or base class class B extends A{ //Inherits parent class methods  //child class methods  void method3(){}  void method4(){} }>

4. steber: Polimorfizem

Nanaša se na sposobnost objektno usmerjenih programskih jezikov, da učinkovito razlikujejo med entitetami z istim imenom. To naredi Java s pomočjo podpisa in deklaracije teh entitet. Sposobnost pojavljanja v številnih oblikah se imenuje polimorfizem .

Npr.

Java
sleep(1000) //millis sleep(1000,2000) //millis,nanos>

Opomba: Polimorfizem v Javi je v glavnem dveh vrst:

  1. Preobremenitev
  2. Preglasitev

Primer

Java
// Java program to Demonstrate Polymorphism // This class will contain // 3 methods with same name, // yet the program will // compile & run successfully public class Sum {  // Overloaded sum().  // This sum takes two int parameters  public int sum(int x, int y)  {  return (x + y);  }  // Overloaded sum().  // This sum takes three int parameters  public int sum(int x, int y, int z)  {  return (x + y + z);  }  // Overloaded sum().  // This sum takes two double parameters  public double sum(double x, double y)  {  return (x + y);  }  // Driver code  public static void main(String args[])  {  Sum s = new Sum();  System.out.println(s.sum(10, 20));  System.out.println(s.sum(10, 20, 30));  System.out.println(s.sum(10.5, 20.5));  } }>

Izhod
30 60 31.0>

Zaključek

Koncept objektno usmerjenega programiranja (OOP) v Javi je zmogljiv način za organiziranje in pisanje kode. Uporablja ključne ideje, kot so razredi, objekti, dedovanje, polimorfizem, enkapsulacija in abstrakcija, da ustvari prilagodljivo in ponovno uporabljivo kodo. Z uporabo koncepta Java OOPs lahko programerji učinkoviteje gradijo kompleksne aplikacije, zaradi česar je koda lažja za upravljanje, razumevanje in spreminjanje. Na splošno Javini OOP koncepti pomagajo pri ustvarjanju robustnih in razširljivih programskih rešitev.

Koncept objektno usmerjenega programiranja (OOP) v Javi – pogosta vprašanja

Kaj je koncept OOP v Javi?

OOP (Object-Oriented Programming) je programska paradigma, ki temelji na konceptu objektov, ki lahko vsebujejo podatke v obliki polj (atributov ali lastnosti) in kodo v obliki procedur (metod ali funkcij). V Javi pojmi OOP vključujejo enkapsulacijo, dedovanje, polimorfizem in abstrakcijo.

Zakaj je OOP pomemben v Javi?

OOP pomaga pri organiziranju in strukturiranju kode na bolj obvladljiv način, kar olajša vzdrževanje in prilagajanje aplikacij Java. Prav tako spodbuja ponovno uporabnost kode, modularnost in prilagodljivost, kar vodi do učinkovitega in robustnega razvoja programske opreme.

Katera so glavna načela OOP-jev v Javi?

Glavna načela OOP-jev v Javi so enkapsulacija, dedovanje, polimorfizem in abstrakcija. Enkapsulacija zagotavlja, da je notranje stanje objekta skrito in da je do njega mogoče dostopati samo prek javnih metod. Dedovanje omogoča, da en razred podeduje lastnosti in vedenje od drugega. Polimorfizem omogoča, da se objekti obravnavajo kot primerki njihovega nadrejenega razreda. Abstrakcija se osredotoča na skrivanje podrobnosti izvedbe in zunanjemu svetu prikazuje le potrebne informacije.

Kako je OOP implementiran v Javi?

V Javi je OOP implementiran prek razredov in objektov. Razred služi kot načrt za ustvarjanje predmetov, ki so primerki tega razreda. Vsak objekt ima svoj nabor atributov (spremenljivk) in metod (funkcij). Z upoštevanjem konceptov OOP, kot so enkapsulacija, dedovanje, polimorfizem in abstrakcija, lahko razvijalci Jave oblikujejo dobro strukturirano in vzdržljivo kodo.

zemljevid reactjs

Kakšne so prednosti uporabe OOP-jev v Javi?

Nekatere prednosti uporabe OOP-jev v Javi vključujejo ponovno uporabnost kode, modularnost, prilagodljivost, razširljivost in lažje vzdrževanje. OOP razvijalcem omogoča modeliranje entitet iz resničnega sveta kot objektov, kar vodi do bolj intuitivne in organizirane kode. Podpira tudi funkcije, kot sta dedovanje in polimorfizem, ki izboljšata razširljivost in berljivost aplikacij Java.

Ali lahko navedete primer implementacije koncepta OOP v Javi?

Seveda! Primer implementacije koncepta OOP v Javi je ustvarjanje razreda 'Car' z atributi, kot so 'make', 'model' in 'year', skupaj z metodami, kot so 'start()', 'accelerate()' in 'stop ()'. Z instanciranjem objektov iz razreda 'Car' in klicanjem njegovih metod lahko simuliramo vedenje različnih primerkov avtomobilov na strukturiran in objektno usmerjen način.