Un obiect din Java - și orice alt limbaj „orientat pe obiect” - este blocul de bază al tuturor aplicațiilor Java și reprezintă orice obiect din lumea reală pe care îl puteți găsi în jurul vostru: un măr, o pisică, o mașină sau un om..
Cele două caracteristici pe care le are întotdeauna un obiect sunt stat și comportament. Luați în considerare un obiect al persoanei. Starea sa poate include culoarea părului, sexul, înălțimea și greutatea, dar și sentimentele de furie, frustrare sau dragoste. Comportamentul său ar putea include mersul, dormitul, gătitul, munca sau orice altceva ar putea face o persoană.
Obiectele formează chiar nucleul oricărui limbaj de programare orientat pe obiecte.
Sute de cărți au fost scrise pentru a descrie complexitatea programării orientate pe obiecte, dar, practic, OOP se bazează pe o abordare holistică care pune accent pe reutilizare și moștenire, care simplifică timpul de dezvoltare. Limbi procedurale mai tradiționale, cum ar fi Fortran, COBOL și C, adoptă o abordare de sus în jos, descompunând sarcina sau problema într-o serie de funcții logice, ordonate..
De exemplu, luați în considerare o aplicație bancomă simplă folosită de o bancă. Înainte de a scrie orice cod, mai întâi un dezvoltator Java va crea o foaie de parcurs sau un plan cu privire la modul de procedură, începând de obicei cu o listă cu toate obiectele care trebuie create și cum vor interacționa. Dezvoltatorii pot folosi o diagramă de clasă pentru a clarifica relațiile dintre obiecte. Obiectele necesare pentru utilizarea într-o tranzacție cu bancomat pot fi bani, card, sold, primire, retragere, depozit și așa mai departe. Aceste obiecte trebuie să lucreze împreună pentru a finaliza tranzacția: efectuarea unui depozit ar trebui să conducă la un raport de bilanț și, poate, o primire. Obiectele vor transmite mesaje între ele pentru a finaliza lucrurile.
Un obiect este o instanță a unei clase: iată punctul principal al programării orientate pe obiecte și ideea reutilizării. Înainte ca un obiect să poată exista, trebuie să existe o clasă pe care să se bazeze.
Poate că vrem un obiect de carte: să fim exacti, vrem cartea Ghidul autostopistului galactic. Mai întâi trebuie să creăm o carte de clasă. Această clasă ar putea sta la baza oricărei cărți din lume.
S-ar putea arata asa:
public class Rezerva
Titlul șirului;
Autor de coarde;
// metode
public String getTitle (
titlu de returnare;
public void setTitle ()
titlu de returnare;
public int getAuthor ()
autor retur;
public int setAuthor ()
autor retur;
// etc.
Cartea clasei are un titlu și un autor cu metode care vă permit să setați sau să obțineți oricare dintre aceste elemente (ar avea și mai multe elemente, dar acest exemplu este doar un extras). Dar acesta nu este încă un obiect - o aplicație Java încă nu poate face nimic cu ea. Trebuie inițiat pentru a deveni un obiect care poate fi folosit.
Relația dintre un obiect și o clasă este de așa natură încât multe obiecte pot fi create folosind o clasă. Fiecare obiect are propriile date, dar structura sa de bază (adică, tipul de date pe care îl stochează și comportamentele sale) sunt definite de clasă.
Putem crea mai multe obiecte dintr-o clasă de carte. Fiecare obiect se numește an instanță a clasei.
Book HitchHiker = new Book („Ghidul HitchHikerului pentru galaxie”, „Douglas Adams”);
Book ShortHistory = new Book ("O scurtă istorie a aproape totul", "Bill Bryson");
Carte IceStation = new Book („Zebra Ice Station”, „Alistair MacLean”);