Documente Academic
Documente Profesional
Documente Cultură
Exp (E_GCSimplificat)
Clasa Object
• protected object clone() throws clonenotsupportedexception; // returneaza o clona a
obiectului curent
• public boolean equals(object obj); // arata daca obiectul current este egal cu cel specificat.
pentru un obiect non-null metoda are proprietatile: reflexivitate, simetrie, tranzitivitate,
consistenta si non-egalitate cu null. implementarea implicita pentru object: intoarce true daca
obiectul current este acelasi cu obj.
• protected void finalize() throws throwable ; // metoda invocata de colectorul de reziduuri la
disponibilizarea obiectului
• public final class getclass(); // furnizeaza instanta de tip class asociata obiectului curent
• public final void notify() ; // scoate din starea de asteptare un fir introdus in asteptare prin
obiectul monitor curent (programare concurenta)
• public final void notifyall() ; // idem pentru toate firele
• public final void wait() throws interruptedexception ; // trecere in stare de asteptare a firului
curent. metoda este invocata intr-un context concurential
• public final void wait(long timeout) throws interruptedexception ; //idem dar se specifica o
cuanta de timp exprimata ia milisecunde pentru starea de asteptare
• public final void wait(long timeout, int nanos) throws interruptedexception; //idem
public String toString() ; // descriere de tip string a obiectului curent
Descrierea implicita este:
getClass().getName() + '@' + Integer.toHexString(hashCode())
public int hashCode() ; // Intoarce un cod hash asociat obiectului, cod
care sa poata fi utilizat in tabele de dispersie. Conventiile de generare a
codului hash sunt:
codul unui obiect nu se schimba pe parcursul unei executii
doua obiecte egale in sensul metodei equals, au coduri egale
doua obiecte inegale conform equals nu trebuie sa aiba neaparat coduri distincte
Pentru a respecta aceste reguli este necesara suprascrierea metodei
hashCode atunci cand se suprascrie metoda equals.
Tratarea exceptiilor
Erorile se impart in doua tipuri: checked si unchecked dupa cum tratarea lor este obligatorie sau nu
(adica trebuie mentionate in clauzele throws ale metodelor/constructorilor si trecute prin blocul try-
catch).
Ierarhia:
Throwable - Superclasa tuturor claselor de erori
Error - Erori grave de tip unchecked cauzate de regula de mediu
Exception - Exceptii corespunzand unor erori obisnuite de tip checked mai putin cele de tip
RuntimeException care sunt de tip unchecked si sunt generate de JVM
Metode ale clasei Throwable
Exp (E_Exceptii)
Clonarea obiectelor
• Obiectele clonabile trebuie sa fie instante ale unor clase care implementeaza interfata
Cloneable;
protected Object clone() throws CloneNotSupportedException; // shallow copy
Exp (E_Clonare)
Java Native Interface (JNI)
• Este o interfata Java pentru cod nativ.
• Avantaje: reutilizare de cod, performante imbunatatite ca timp de executie.
• Este dezvoltata pentru utilizare cod C++ si C.