Ako už názov napovedá, objektovo orientované programovanie alebo koncept Java OOPs sa týka jazykov, ktoré používajú objekty v programovaní, používajú objekty ako primárny zdroj na implementáciu toho, čo sa má stať v kóde. Objekty vidí divák alebo používateľ pri vykonávaní vami zadaných úloh.
Objektovo orientované programovanie sa zameriava na implementáciu entít reálneho sveta, ako je dedičnosť, skrývanie, polymorfizmus atď. Hlavným cieľom OOP je spojiť dáta a funkcie, ktoré s nimi pracujú, aby žiadna iná časť kódu nemala prístup k týmto dátam okrem tejto funkcie.
Poďme diskutovať o predpokladoch vylepšovaním konceptov deklarácie metódy a odovzdávania správ. Počnúc deklaráciou metódy pozostáva zo šiestich komponentov:
- Modifikátor prístupu : Definuje typ prístupu metódy, t. j. odkiaľ k nemu možno pristupovať vo vašej aplikácii. V jazyku Java existujú 4 typy špecifikátorov prístupu:
- verejné: Dostupné vo všetkých triedach vo vašej aplikácii.
- chránené: Prístupné v rámci balíka, v ktorom je definovaný a v ňom podtriedy (vrátane podtried deklarovaných mimo balíka) .
- súkromné: Prístupný iba v rámci triedy, v ktorej je definovaný.
- predvolené (deklarované/definované bez použitia akéhokoľvek modifikátora): Prístupné v rámci rovnakej triedy a balíka, v rámci ktorého je definovaná jeho trieda.
- Typ návratu : Typ údajov hodnoty vrátenej metódou alebo void, ak nevracia hodnotu.
- Názov metódy : Pravidlá pre názvy polí platia aj pre názvy metód, ale konvencia je trochu odlišná.
- Zoznam parametrov : Čiarkami oddelený zoznam vstupných parametrov, ktoré sú definované, pred ktorým je ich dátový typ v uzavretých zátvorkách. Ak neexistujú žiadne parametre, musíte použiť prázdne zátvorky ().
- Zoznam výnimiek : Výnimky, ktoré očakávate od metódy. Tieto výnimky môžete určiť.
- Telo metódy : Je to blok kódu uzavretý medzi zloženými zátvorkami, ktorý musíte vykonať na vykonanie zamýšľaných operácií.
Odovzdanie správy : Objekty medzi sebou komunikujú tak, že si navzájom posielajú a prijímajú informácie. Správa pre objekt je žiadosťou o vykonanie procedúry, a preto vyvolá funkciu v prijímajúcom objekte, ktorá generuje požadované výsledky. Odovzdávanie správ zahŕňa zadanie názvu objektu, názvu funkcie a informácií, ktoré sa majú odoslať.
Master OOP v Jave Píšte čistejší, modulárnejší a opakovane použiteľný kód Java vybudovaním základov objektovo orientovaného programovania s interaktívnym kurzom Educative Learn Objektovo orientované programovanie v Jave . Zaregistrujte sa na Educative.io pomocou kódu GEEKS10 aby ste ušetrili 10 % na vašom predplatnom.
Teraz, keď sme pokryli základné predpoklady, prejdeme k 4 pilierom OOP, ktoré sú nasledovné. Začnime však učením sa o rôznych charakteristikách objektovo orientovaného programovacieho jazyka.
Koncepty OOPS sú nasledovné:
- Trieda
- Objekt
- Metóda a absolvovanie metódy
- Piliere OOP
- Abstrakcia
- Zapuzdrenie
- Dedičnosť
- Polymorfizmus
- Polymorfizmus v čase kompilácie
- Runtime polymorfizmus

A trieda je užívateľom definovaný plán alebo prototyp, z ktorého sa vytvárajú objekty. Predstavuje množinu vlastností alebo metód, ktoré sú spoločné pre všetky objekty jedného typu. Pomocou tried môžete vytvoriť viacero objektov s rovnakým správaním namiesto toho, aby ste ich kód písali viackrát. To zahŕňa triedy pre objekty, ktoré sa vo vašom kóde vyskytujú viackrát. Vo všeobecnosti môžu deklarácie tried obsahovať tieto komponenty v poradí:
- Modifikátory : Trieda môže byť verejná alebo môže mať predvolený prístup (pozri toto pre podrobnosti).
- Názov triedy: Názov triedy by mal podľa konvencie začínať začiatočným písmenom veľkým písmenom.
- Supertrieda (ak existuje): Názov rodiča triedy (nadtrieda), ak existuje, pred ktorým je kľúčové slovo extends. Trieda môže rozšíriť (podtriedu) iba o jedného rodiča.
- Rozhrania (ak existujú): Čiarkami oddelený zoznam rozhraní implementovaných triedou, ak nejaké existujú, pred ktorým je kľúčové slovo implements. Trieda môže implementovať viac ako jedno rozhranie.
- Telo: Telo triedy je obklopené zloženými zátvorkami { }.
Objekt je základná jednotka objektovo orientovaného programovania, ktorá predstavuje entity reálneho života. Typický program Java vytvára veľa objektov, ktoré, ako viete, interagujú vyvolávaním metód. Objekty sú to, čo vykonáva váš kód, sú časťou vášho kódu viditeľnou pre diváka/používateľa. Objekt pozostáva hlavne z:
- Štát : Je reprezentovaný atribútmi objektu. Odráža tiež vlastnosti objektu.
- Správanie : Je reprezentovaný metódami objektu. Odráža tiež reakciu objektu na iné objekty.
- Identita : Je to jedinečný názov daný objektu, ktorý mu umožňuje interakciu s inými objektmi.
- Metóda : Metóda je súbor príkazov, ktoré vykonávajú určitú špecifickú úlohu a vrátia výsledok volajúcemu. Metóda môže vykonať nejakú špecifickú úlohu bez toho, aby niečo vrátila. Metódy nám to umožňujú opätovné použitie kód bez jeho prepisovania, a preto sa o nich uvažuje šetričov času . V Jave musí byť každá metóda súčasťou nejakej triedy, ktorá sa líši od jazykov ako C , C++ , a Python .
nastaviť v jave
trieda a objekty jeden jednoduchý java 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(); } }> Výkon
Employee name is: Rathod Avinash Employee CTC is: 10000.0>
Poďme teraz diskutovať o 4 pilieroch OOP:
1. pilier: Abstrakcia
Údaje Abstrakcia je vlastnosť, na základe ktorej sa užívateľovi zobrazujú len podstatné detaily. Triviálne alebo nepodstatné jednotky sa používateľovi nezobrazujú. Príklad: Auto sa považuje skôr za auto než za jeho jednotlivé komponenty.
Abstrakciu údajov možno definovať aj ako proces identifikácie iba požadovaných charakteristík objektu, pričom sa ignorujú nepodstatné detaily. Vlastnosti a správanie objektu ho odlišujú od iných objektov podobného typu a tiež pomáhajú pri klasifikácii/zoskupovaní objektu.
Uvažujme o skutočnom príklade muža, ktorý riadi auto. Človek vie len to, že stláčaním plynu sa zvýši rýchlosť auta alebo brzdením sa auto zastaví, ale nevie, ako pri stlačení plynu sa rýchlosť v skutočnosti zvyšuje. Nevie o vnútornom mechanizme auta ani o umiestnení plynu, bŕzd a pod. v aute. Toto je abstrakcia.
V Jave sa abstrakcia dosahuje pomocou rozhrania a abstraktné triedy . Pomocou rozhraní môžeme dosiahnuť 100% abstrakciu.
Abstraktná metóda obsahuje iba deklaráciu metódy, ale nie implementáciu.
Ukážka abstraktnej triedy
Java //abstract class abstract class GFG{ //abstract methods declaration abstract void add(); abstract void mul(); abstract void div(); }> Pilier 2: Zapuzdrenie
Definuje sa ako balenie údajov do jednej jednotky. Je to mechanizmus, ktorý spája kód a údaje, s ktorými sa manipuluje. Ďalším spôsobom, ako premýšľať o zapuzdrení, je, že ide o ochranný štít, ktorý zabraňuje prístupu kódu mimo tohto štítu k údajom.
- Technicky v zapuzdrenie , premenné alebo údaje v triede sú skryté pred akoukoľvek inou triedou a možno k nim pristupovať iba prostredníctvom akejkoľvek členskej funkcie triedy, v ktorej sú deklarované.
- V zapuzdrení sú údaje v triede skryté pred ostatnými triedami, čo je podobné tomu ukrývanie údajov robí. Pojmy zapuzdrenie a skrytie údajov sa teda používajú zameniteľne.
- Zapuzdrenie je možné dosiahnuť deklarovaním všetkých premenných v triede ako súkromných a napísaním verejných metód v triede na nastavenie a získanie hodnôt premenných.
Ukážka zapuzdrenia:
Java //Encapsulation using private modifier //Employee class contains private data called employee id and employee name class Employee { private int empid; private String ename; }> Pilier 3: Dedičnosť
Dedičnosť je dôležitým pilierom OOP (Object Oriented Programming). Je to mechanizmus v Jave, pomocou ktorého môže jedna trieda zdediť vlastnosti (polia a metódy) inej triedy. Používaním dosahujeme dedičnosť predlžuje kľúčové slovo. Dedičstvo je známe aj ako je-a vzťah.
Poďme diskutovať o niektorých často používaných dôležitých terminológiách:
- Supertrieda: Trieda, ktorej vlastnosti sa zdedia, je známa ako nadtrieda (známa aj ako základná alebo rodičovská trieda).
- Podtrieda: Trieda, ktorá zdedí druhú triedu, je známa ako podtrieda (známa aj ako odvodená alebo rozšírená alebo podradená trieda). Podtrieda môže pridať svoje vlastné polia a metódy okrem polí a metód nadtriedy.
- Opätovná použiteľnosť: Dedičnosť podporuje koncept opätovnej použiteľnosti, t. j. keď chceme vytvoriť novú triedu a už existuje trieda, ktorá obsahuje časť kódu, ktorý chceme, môžeme odvodiť našu novú triedu z existujúcej triedy. Týmto spôsobom znova používame polia a metódy existujúcej triedy.
Preukázanie dedičstva:
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(){} }> Pilier 4: Polymorfizmus
Vzťahuje sa na schopnosť objektovo orientovaných programovacích jazykov efektívne rozlišovať medzi entitami s rovnakým názvom. To robí Java pomocou podpisu a vyhlásenia týchto subjektov. Schopnosť objaviť sa v mnohých podobách je tzv polymorfizmus .
napr.
Java sleep(1000) //millis sleep(1000,2000) //millis,nanos>
Poznámka: Polymorfizmus v Jave má hlavne 2 typy:
- Preťaženie
- Prvoradé
Príklad
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)); } }> Výkon
30 60 31.0>
Záver
Koncept objektovo orientovaného programovania (OOPs) v jazyku Java predstavuje účinný spôsob organizácie a písania kódu. Používa kľúčové myšlienky, ako sú triedy, objekty, dedičnosť, polymorfizmus, zapuzdrenie a abstrakcia na vytvorenie flexibilného a opakovane použiteľného kódu. Použitím konceptu Java OOPs môžu programátori efektívnejšie vytvárať komplexné aplikácie, čo uľahčuje správu, pochopenie a úpravu kódu. Celkovo koncepty OOP v jazyku Java pomáhajú pri vytváraní robustných a škálovateľných softvérových riešení.
Koncept objektovo orientovaného programovania (OOPs) v jazyku Java – FAQ
Čo je koncept OOPs v Jave?
OOPs (Object-Oriented Programming) je programovacia paradigma založená na koncepte objektov, ktoré môžu obsahovať dáta vo forme polí (atribútov alebo vlastností) a kódu vo forme procedúr (metód alebo funkcií). V Jave koncepty OOP zahŕňajú zapuzdrenie, dedičnosť, polymorfizmus a abstrakciu.
Prečo sú OOP dôležité v Jave?
OOPs pomáha pri organizovaní a štruktúrovaní kódu spravovateľnejším spôsobom, čím uľahčuje údržbu a škálovanie aplikácií Java. Podporuje tiež opätovnú použiteľnosť kódu, modularitu a flexibilitu, čo vedie k efektívnemu a robustnému vývoju softvéru.
Aké sú hlavné princípy OOP v Jave?
Hlavnými princípmi OOP v Jave sú zapuzdrenie, dedičnosť, polymorfizmus a abstrakcia. Zapuzdrenie zaisťuje, že vnútorný stav objektu je skrytý a je možné k nemu pristupovať iba prostredníctvom verejných metód. Dedičnosť umožňuje jednej triede zdediť vlastnosti a správanie od inej. Polymorfizmus umožňuje, aby sa s objektmi zaobchádzalo ako s inštanciami ich rodičovskej triedy. Abstrakcia sa zameriava na skrytie detailov implementácie a zobrazenie iba nevyhnutných informácií vonkajšiemu svetu.
Ako sa implementujú OOP v jazyku Java?
V Jave sú OOP implementované prostredníctvom tried a objektov. Trieda slúži ako plán na vytváranie objektov, ktoré sú inštanciami tejto triedy. Každý objekt má svoj vlastný súbor atribútov (premenných) a metód (funkcií). Dodržiavaním konceptov OOP, ako je zapuzdrenie, dedičnosť, polymorfizmus a abstrakcia, môžu vývojári Java navrhnúť dobre štruktúrovaný a udržiavateľný kód.
Aké sú výhody používania OOP v jazyku Java?
Medzi výhody používania OOP v jazyku Java patrí opätovná použiteľnosť kódu, modularita, flexibilita, škálovateľnosť a jednoduchšia údržba. OOPs umožňuje vývojárom modelovať entity reálneho sveta ako objekty, čo vedie k intuitívnejšiemu a organizovanejšiemu kódu. Podporuje tiež funkcie ako dedičnosť a polymorfizmus, ktoré zlepšujú rozšíriteľnosť a čitateľnosť aplikácií Java.
Môžete poskytnúť príklad implementácie konceptu OOP v jazyku Java?
Samozrejme! Príkladom implementácie konceptu OOP v jazyku Java je vytvorenie triedy 'Car' s atribútmi ako 'make', 'model' a 'year' spolu s metódami ako 'start()', 'accelerate()' a 'stop ()“. Vytvorením inštancií objektov z triedy „Car“ a volaním jej metód môžeme štruktúrovaným a objektovo orientovaným spôsobom simulovať správanie rôznych inštancií automobilov.
aký je súborový systém linux