Sunteți pe pagina 1din 3

1. Java Platform. OOP in Java.

Java Platform
O platforma este hardware-ul sau mediul software in care ruleaza programele.
Cele mai populare platforme sunt: Microsoft Windows, Linux, Solaris OS si Mac OS.
Cele mai multe platforme pot fi descrise ca o combinatie de sisteme de operare si hardwareul care sta la baza.
Platforma Java difera de majoritatea platformelor prin faptul ca este o platforme pur software
care ruleaza deasupra altor platforme bazate pe hardware.
Platforma Java are doua componente:
Masina Virtuala Java
Interfata de programare a aplicatiei Java (API)
API este o colectie de componente software gata facute care dispun de multe capabilitati
folositoare. Este grupata in biblioteci de clase inrudite si interfete; aceste biblioteci mai sunt
numite si pachete (packages).

Fiecare implementare completa a platformei Java ofera urmatoarele proprietati:


Unelte de dezvoltare: furnizeaza tot ce este necesar pentru compilare, rulare, monitorizare,
depanare, si documentarea unei aplicatii. Principalele unelte folosite sunt compilatorul javac,
java launcher, si unealta pentru documentatie javadoc.
API: ofera un sir lung de clase care sunt deja implementate si pot fi folosite la implementarea
unei aplicatii;
Tehnologiile de implementare: Software-ul JDK furnizeaza mecanismele standard cum ar fi
software-ul Java Web Start si Java Plug-In pentru desfasurarea aplicatiei.
Uneltele pentru interfata cu utilizatorul: Uneltele Swing si Java 2D toolkits fac posibila
crearea interfetei sofisticate (Graphical User Interfaces -GUIs-).
Biblioteci de integrare: Bibliotecile de integrare cum ar fi Java IDL API, JDBCTM API, Java RMI,
permite accesul la bazele de date si manipularea obiectelor de la distanta.

Avantajele tehnologiei Java


Incepe rapid: Desi limbajul de programare Java este un limbaj puternic orientat pe obiecte,
este usor de invatat, mai ales pentru programatorii deja familiarizati cu C/C++.
Scrie cod putin: un program scris in limbajul de programare Java poate fi de patru ori mai mic
decat unul scris in C++.
Scrie cod mai bun: colectarea automata a gunoiului ajuta la evitarea scurgerilor de memorie.
Dezvolta programe mai rapid
1

Evita dependetele de platforma: Poti pastra portabilitatea programului evitand folosirea unor
biblioteci scrise in alte limbaje.
Scrie o data, ruleaza oriunde: Datorita faptului ca aplicatiile scrise in limbajul de programare
Java sunt compilate in bytecodes independet de masina, codul poate fi rulat pe orice masina iar
software-ul este mult mai usor de distribuit.

OOP
Obiectele reprezinta instante ale clasei deoarece prin construirea unui obiect povestea din
spatele clasei devine ceva concret: un spatiu de memorie in Heap in care atributele au valori.
Obiectele sunt construite prin operatorul new care va apela functia constructor din clasa (cu
sau fara parametrii):
Obiectul ca si variabila reprezinta o referinta (pointer) ce gestioneaza o adresa din Heap. Prin
intermediul acestei adrese avem acces la zona de memorie rezervata pentru obiect in care se
gasesc valorile atributelor sale. Prin definirea unui obiect se obtine o simpla referinta care are
valoarea implicita null. Pentru a da valoare acestei referinte se construieste (instantiaza)
obiectul prin new.
Cum se acceseaza atributele si metodele
Obiectul are acces la atributele si metodele sale (care nu sunt statice) prin intermediul
operatorului . (punct).
Ex:
Pentru clasa Carte avem metodele public float getPret() si public String afisare
In main vom defini obiectul Carte carteObject; Acum referinta carteObject are valoare null
Cream obiectul carteObject = new Carte(); ce va fi folosit pentru apelarea metodelor din clasa
Carte prin intermediul punctului: carte.afisare(); carte.getPret();

O clasa este o schita sau un prototip din care obiectele sunt create.
Clasele reprezinta principiile de baza ale programarii orientate obiect. Clasele reprezinta notiuni
abstracte, povesti, modele (blueprints), ce descriu:
caracteristicile, atributele unui obiect; reprezinta ceea ce stie sau ce este obiectul;
ce stie sa faca obiectul, comportamentul acestuia descris de metodele sale;
Cum se defineste o clasa in Java
Sintaxa generala prin care se defineste o clasa in Java 6 este:
[modificator_acces] class nume_clasa [extends base_class]
[implements interface1, interface2, ]
{//inceput bloc clasa
2

//atribute
//metode
//blocuri de cod
//alte clase
}//sfarsit bloc clasa
modificator acces descrie drepturile de utilizare a acestei clase dintr-un program Java; acest
atribut este optional, avand ca valoare default, private;
class cuvant cheie in Java ce defineste aceasta structura
nume clasa numele clasei definit de programator;
extends permite derivarea dintr-o clasa de baza
implements permite derivarea din una sau mai multe interfete

Mostenirea asigura un mecanism natural si puternic pentru organizarea si structurarea


software-ului. Clasele mostenesc starea si comportamentul de la superclasele lor. Java permite
doar mostenirea simpla, asadar o clasa poate avea un singur un singur parinte (superclasa).
Evident o clasa poate avea oricti mostenitori (subclase). Extinderea unei clase se realizeaza
deci astfel:
class B extends A {...} //A este superclasa clasei B

O interfata este un legatura intre o clasa si lumea externa. Cand o clasa implementeaza o
interfata, promite sa asigure comportamentul publicat de interfata. Daca clasa pretinde sa
implementeze o interfata, toate metodele definite de acea interfata trebuie sa apara in codul ei
sursa inaintea compilarii cu succes a clasei.

Un pachet este un spatiu de nume pentru organizarea claselor si interfetelor intr-o maniera
logica. Aranjand codul in pachete face ca proiectele mari sa fie gestionate mai usor. Din cauza
ca software-ului scris in limbajul de programare Java poate fi compus din sute, chiar mii de clase
individuale, are sens sa pastram lucrurile organizate asezand clasele si interfetele inrudite in
pachete.

Garbage collection este un proces care se uita in zona de memorie heap identifica care obiecte
sunt in uz si care nu stergandu-le pe cele neutilizate. Spre deosebire de C/C++ Java elibereaza
automat referintele neutilizate prin intermediul GB-ului (garbage collector)

S-ar putea să vă placă și