Sunteți pe pagina 1din 3

Clasa - un model(sablon)folosit pentru a crea mai multe obiecte cu aceeasi caracteristici

- este o reprezentare generală a unei categorii de obiecte din care se pot deriva prin
instanţiere obiecte concrete

Date + metode = obiect – un obiect inglobeaza date si operatii si reprezinta o abstractizare a


unei entitati din lumea reala.
Limbajul procedural – axat pe verbe (subprograme)
Limbaj obiectual – concentrat pe substantive (date)
Constructorii – metode speciale care au acelasi nume cu cel al clasei, nu returneaza nicio
valoare si sunt folositi pentru initializarea obiectelor acelei clase la instantierea lor.
- apelati automat la instantierea unui obiect, sau explicit cu this
- constructorii superclasei se apeleaza cu super dintr-o subclasa
- pot fi mai multi constructori care sa difere prin lista de argumente primite
Modificatori – private- nici o alta clasa nu poate instantia obiecte ale acestei clase.
-protected- doar subclasele pot crea obiecte de tipul clasei respective
- public – orice clasa poate crea instante ale clasei respective
Și/sau
- Static- arata ca o variabila este de clasa, nu de instanta
- final – declara o constanta
- transient – folosit la serializarea obiectelor
- volatile – semnaleaza compilatorului sa nu efectueze anumite optimizari
Modificator metoda – private, protected, public, static,
-abstract- o metoda care nu are implementare, apartine unei clase
abstracte
-final – metoda nu mai poate fi supradefinita in subclase
-native – refolosirea functiilor din alte limbaje
-synchronized – in caz ca se lucreaza pe mai multe fire de executie, are
ca efect construirea unui semafor
Mostenirea – o superclasa si o subclasa care preia comportamentul si atributele clasei parinte
- class idClasa extends idClasaBaza
- supraincarcarea si supradefinirea = polimorfism
- supraincarcarea = mai multe metode cu acelasi nume, dar signaturi diferite
- supradefinirea = metode cu acelasi nume, dar aceeasi signatura cu a superclasei
Clasa abstracta – Reprezentarea cu ajutorul claselor a conceptelor abstracte care sa nu poata
fi instantiate si care sa foloseasca doar la dezvoltarea ulterioara a unor clase ce descriu obiecte
concrete.
Pachet – o colectie de clase si interfete intrudite. Folosirea pentru gasirea si utilizarea mai
usoara a claselor, pentru a evita conflictele de nume, si pentru a controla accesul la clase.
- sprijina modularitatea
String–clasă pentru lucrul cu date nemodificabile compuse din mai multe caractere;
StringBuffer – clasa pentru lucrul cu date modificabile compuse din mai multe caractere
Interfata – o colectie de metode fara implementare si declaratii de constante. Doar
modificatorul public poate aparea in declaratia unei interfete.
- instantierea lor nu ocupa memorie
Utilitatea interfetelor – definirea unor similaritati intre clase independente
- impunerea unor specificatii
- definirea unor grupuri de constante
-transmiterea metodelor ca parametrii
Comparable - un obiect se poate compara cu el insusi
Comparator – compara obiecte diferite (instante ale altor clase)
- returneaza o valoare pozitiva, zero, negativa
Exceptii – o exceptie este un eveniment care se produce in timpul executiei unui programsi
care provoaca intreruperea cursului normal al executiei
- se creeaza folosind sintaxa throwing an exception
- secventa care o trateaza se numeste exception handler
- interceptarea ei se numeste catch the exception
Avantaje exceptii – gruparea erorilor dupa tipul lor
- propagarea unei erori pana la un analizator de exceptii
- separarea codului pentru tratarea erorii
Try….catch….finally
Colectii – o colectie este un obiect care grupeaza mai multe elemente intr-o unitate
- folosite pentru memorarea si manipularea datelor
- sortate, ordonate, duplicate, folosesc chei
Avantaje: - reducerea efortului de programare
- cresterea vitezei si calitatii programului
Fluxuri – un flux este un canal de comunicare unidirectional intre doua procese
- un proces care descrie o sursa externa de date se numeste proces producator
- un proces care descrie o destinatie externa de date se numeste consumator
- exista fluxuri de citire-scriere sau fluxuri de procesare (impreuna cu unul primitiv)
Serializarea – este o metoda ce permite transformarea unui obiect intr-o secventa de octeti
sau caractere din care sa poata fi refacut ulterior obiectul original
- asigura un mecanism simplu de utilizat pentru salvarea si restaurarea datelor
- metodele unor alte obiecte de pe alta masina pot fi apelate ca si cum ar exista
pe masina locala
JDBC – o interfata standard SQL de acces la date. Colectie de clase si interfete.
- accesul la baza de date se face printr-un driver
- permite stabilirea unei conexiuni cu baza de date, trimiterea cererilor SQL,
procesarea rezultatelor
- interfata de nivel jos
1. Driver ODBC-potrivit pentru firme, unde instalarile pe masina client nu sunt o problema.
2. Apel nativ-driver java- converteste apelurile JDBC in apeluri interne pe bazele de date.
Necesita ca o parte de cod sa fie incarcata pe masina client.
3. Driver JDBC pur – converteste apelurile in protocoale independente de baza de date. Cea
mai flexibila implementare.
4. Driver Java – protocol nativ – converteste apelurile JDBC direct in protocolul de retea al
bazei de date. Apeluri directe de pe masina client la baza de date, practic pentru accesul la
internet.
Fir de executie – o succesiune secventiala de instructiuni care se executa in cadrul unui
proces
- se creeaza prin Thread, se implementeaza prin Runnable
Un fir de executie se poate gasi in 4 stari: new thread, runnable, not runnable, dead.
In prima stare firul este vid, deci nu are alocate resurse de catre sistem. Putem executa o
singura operatie asupra lui, si anume lansarea in executie, apoi trece in executie alocand
resursele sistem necesare, in starea runnable. Aici se planifica firul de executie la procesor
pentru a fi lansat. Un fir ajunge in starea not runnable daca este adormit prin apelul metodei
sleep, s-a apelat metoda wait, sau este blocat intr-o operatie de intrare/iesire. Starea dead este
starea in care un fir de executie ajunge la terminarea sa.