Sunteți pe pagina 1din 21

Ce este JAVA?? Corpul contine declaratii de membri ai clasei respective.

- Un limbaj de programare, ale carui calitati i-au permis Ce este signatura clasei?
raspandirea rapida, fiind in present unul din limbajele Consta in numele acesteia insotit de lista de argumente.
cele mai larg folosite; Ce sunt “this” si “super”?
- Un mediu de executie pentru aplicatiile JAVA, numit in Reprezinta 2 referinte predefinite in orice clasa.
prezent “Java 2 Runtime Environment” This = o referinta la obiect din care face parte referinta
- O paltforma pentru dezvoltarea de aplicatii in care se respectiva.
foloseste limbajul JAVA, care se numeste in present “ Super = o referinta la superclasa.
JAVA 2 Platform” Ce este superclasa?
- O tehnologie software puternica si moderna,care Superclasa reprezinta clasa de baza. Este o clasa din care
corespunde cerintelor lucrului cu retelele de calculatoare. se pot deriva subclase
Calitati ale limbajului JAVA!! Cate superclase poate avea o clasa in Limbajul Java?
- Simplu: desi sintaxa se aseamana cu C/C++, au fost O singura superclasa.Exceptie face clasa Object care este
eliminate acele aspect care constituiau surse de erori sau radacina ierarhiei de clase
produceau confuzii; Care este radacina ierarhiei de clase JAVA?
- Orientat pe obiecte: nu este posibil sa se scrie aplicatii Radacina ierarhiei de clase este clasa Object, care nu are
care nu respecta normele POO; superclasa.
- Robust: programele sunt foarte fiabile, deoarece sunt Ce este un pachet?
prevazute numeroase verificari atat la compilare, cat si la Este o colectie de clase reutilizabile destinate unui
executie; anumit domeniu de utilizare, care sunt puse la dispozitia
- Sigur: fiind destinat lucrului in retele de calculatoare, programatorului sub forma compilata(bytecode).
acesta nu produce daune, cum ar fi accesul neautorizat la Care este declaratia de import la cerere si cum
informative sau chiar distrugerea acesteie; actioneaza?
- Portabil: poate fi mutat de pe un calculator pe altul, de Import nume_pachet.*;
alt tip hardware si/sau alt system de operare; Ea nu are semnificatia ca se importa toate clasele din
- Compilat si interpretat; pachetul(subpachetul)respectiv, ci numai acele clase care
- Neutru fata de arhitectura; sunt utilizate efectiv in program.
- Permite programarea concurenta; Ce este mostenirea?
Programarea Orientata pe Obiecte: Este una din proprietatile fundamentale ale claselor in
POO este o forma de programare, in care programatorii POO. Consta ca dintr-o clasa se pot deriva alte clase.
defines clase de obiecte, iar programul contine un Ce este polimorfismul?
ansamblu de clase si obiecte, care comunica intre ele prin Este o alta proprietate fundamental a claselor. In JAVA,
mesaje. este posibil ca o metoda a superclasei sa fie redefinita in
Ce contine pachetul java.lang? subclasa.
Contine clasele de baza necesare programarii in limbajul In ce situatii se manifesta polimorfismul?
JAVA. Se manifesta atunci cand unei variabile-referinta pentru
Cum este importat pachetul java.lang? superclasa I se atribuie ca valoare o referinta catre o
Pentru clasele sin pachetul java.lang, nu este necesara o instant a unei subclase a acesteia, in care una sau mai
declarative de import, acestea fiind importate implicit. multe metode au fost redefinite.
Clasa: este o extensie a conceptului de tip de date si Ce este incapsularea?
contine o structura de date, impreuna cu Este una din proprietatile fundamentale ale claselor in
metodele(functiile) care se aplica acestor date. POO.
Care este cea mai simpla forma de declarare a unei Ce este o clasa acoperitoare de sir?
clase? Aceste clase pun la dispozitia programatorului atat
class NumeClasa { variabile finale, cat si metode necesare pentru a lucre cu
declaratii_de_membri tipul de date respective.
} Ce este clasa math?
Ce este numele clasei ? Clasa math este foarte utila in calculi stiintifice si
Numele clasei este un identificator. ingineresti. Ea contine un numar mare de functii
Cu ce incepe numele clasei? matematice si 2 constante matematice: numarul “e” si
Se obisnuieste ca numele clasei sa inceapa cu o “pi”.
majuscula. Cum se poate calcula sinusul trigonometric ?
Ce contine corpul clasei? public static double sin(double a)
Cum se poate calcula radacina patrata a unui numar?

1
public static double sqrt(double a) La ce serveste declaratia import?
Cum se calculeaza logaritmul natural al unui numar? Pentru a putea utiliza intr-un fisier-sursa Java un anumit
public static duble log(double a) pachet de clase.
Ce este clasa Exception? La ce serveste declaratia import si ce forma are?
Aceasta clasa este radacina ierarhiei claselor de exceptii. Declaratia import serveste la importul claselor utile in
Ce fel de obiecte apartin clasei String Buffer? program si nu a tuturor claselor din pachet
Obiectele clasei implementeaza siruri care pot fi exemplu: import nume_pachet*;
modificate atat ca lungime, cat si sub aspectul
caracterelor pe care le contin. Obiectul: este o instantiere a clasei. Fiecare obiect se
Care sunt principalele metode ale clasei StringBuffer? caracterizeaza prin stare si comportament. Starea
- Public int length(); obiectului depinde de datele pe care acesta le contine, in
- Public int capacity(); timp ce comportamentul este dat de metodele clasei
- Public StringBuffer append(char c); respective. In acelasi program se pot folosi mai multe
- Public StringBuffer insert (int offset, char c); obiecte, apartinand aceleasi clase, sau unor clase diferite.
- Public String toString(). Prin ce se determina starea si comportamentul
Ce sunt clasele publice? obiectului?
Sunt clase care pot fi utilizate si in alte pachete, decat cel Starea obiectului depinde de datele pe care le contine
din care fac parte. Comportamentul este dat de metodele clasei respective
Cum se declara o clasa publica? Ce este un constructor?
Se declara intr-un fisier separate, care are obligatoriu Este o procedura speciala, prin care se construiesc
acelasi nume cu cel al clasei si extensia java. In fata obiecte dintr-o anumita clasa.
numelui clasei se pune modificatorul “public”. Ce sunt constructorii?
Ce este un camp? Sunt niste subprograme, care sunt utilizati impreuna cu
Datele unei clase se numesc campuri, sau variabile operatorul “new” pentru a crea instante ale claselor
member. Ele pot fi statice(ale clasei), sau nestatice(ale Ce este constructorul implicit?
instantei). Daca intro clasa nu este declarat explicit nici un
Care sunt valorile initiale implicite ale campurilor? constructor ea are un constructot implicit,nu are
- Campurile booleene primesc valoarea “false”; argumente si efectul este in initializarea tuturor
- Campurile numerice primesc valoarea 0; campurilor instantei.
- Campurile referinta primesc valoarea null; Ce particularitati prezinta declaratiile de constructori?
Ce sunt campurile statice? - Numele constructorului este mereu acelasi cu al clasei
Sunt plasate in zona rezervata clasei careia ii apartin si careia ii apartine;
nu in cea rezervata instantelor. - Constructorul nu intoarce o valoare;
Ce sunt campurile statice si prin ce se deosebesc de cele - Nu pot fi static;
nestatice? - Invocarea lor se face numai prin operatorul”new’.
-campurile pot fi statice(ale clasei) nestatice(ale Poate avea o clasa mai multi constructori?
instantei) Da poate, acestia diferentiindu-se prin signatura.
-obiectul contine numai campuri nestatice Cum este invocat un constructor?
-campurile statice se pastreaza intr-un singur loc care Invocarea unui constructor se face prin operatorul “new”,
este rezervat clasei respective. urmat de numele constructorului respectiv si de lista de
Ce se intelege prin ascunderea campurilor? argument a acestuia.
Campurile declarate intr-o clasa pot fi ascunse prin new nume_constructor(parametri_efectivi) 
campuri cu acelasi nume, declarate in subclasa. Aceasta Ce este o clasa abstracta?
inseamna ca in metodele clasei se folosesc campurile Clasele abstracte contin in declaratia lor modificatorul
declarate in clasa respective, si nu cele cu acelasi nume abstract. Nu pot fi instantiate.
al superclasei. Cum se declara o metoda abstracta?
Este posibila declararea unei clase de exceptie proprie? - Antetul metodei trebuie sa contina modificatorul
Desi Java API ofera o varietate destul de mare de clase abstract;
de exceptii, uneori programatorul poate simti nevoia sa - Corpul metodei se inlocuieste prin caracterul ‘;’.
isi creeze propriile sale clase de exceptii. Ce este o clasa imbricate?
Ce este o clasa finala? Este o clasa careia I se permite sa aiba ca membri alte
Este clasa care se construieste (se declara) cu ajutorul clase. Pot fi statice sau nestatice.
modificatorului “ final”. O clasa care nu poate avea Ce este o clasa interioara?
subclase.

2
O clasa imbricate nestatica se mai numeste clasa Ce fel de editor de va folosi pentru crearea fisierului
interioara. sursa?
Care este efectul lataral al invocarii unui constructor? Pt crearea fisierului se va folosi un editor de text simplu,
Este construirea in memorie a unui obiect din clasa care genereaza numai text neformatat, de exemplu
careia ii apartine constructorul. Notepad(Windows) si Text Editor(Linux),.
Care este valoarea intoarsa de aplicarea operatorului Prin ce comanda se cere compilarea fisierului sursa?
new? Javac <fisier_sursa>
Valoarea acestei expresii este o referinta la obiectul nou Ce se obtine in cazul in care compilarea a decurs perfect?
construit. Pe ecran apare din nou promptul sistemului de operare,
Ce este constructorul implicit? fara un mesaj de eroare. Daca dam comanda “dir”,
Apare atunci cand intr-o clasa nu este declarat explicit constatam ca in subdirectorul current a aparut un nou
nici un constructor. El nu are argumente. fisier, care poarta numele clasei si etensia class.
Ce este agrenarea? Ce se obtine daca compilarea nu a reusit?
Este o caracteristica fundamental a POO,conform careia Un mesaj de eroare, care indica fie ca exista erori in
un obiect poate contine alte obiecte. program, fie ca exista erori in linia de comanda prin care
Ce este colectorul de reziduuri? ati cerut compilarea.
Este un program al JVM, care elibereaza automat spatial Ce fel de cod genereaza compilatorul Java?
de memorie ocupat de obiectele catre care nu mai exista cod de octeti(bytecode)
nici o referinta. Ce sunt exceptiile?
Ce se intelege prin identitatea obiectelor? Exceptiile sunt anumite situatii care alteraza desfasurarea
Se refera la faptul ca datele sunt grupate in entitati normal a executiei programului.
discrete, numite obiecte. Fiecare obiect din POO Ce este o exceptie?
modeleaza starea si comportamentul unui anumit obiect Sunt incidente care pot fi captate prin mecanismul try…
din lumea reala. catch si pot fi tratate prin program.
Ce se intelege prin clasificare? Care este forma sintactica a instructiuni de tratare a
Este proprietatea obiectelor care au aceeasi structura de exceptilor si cum trebuie interpretata?
date si acelasi comportament de a putea fi grupate intr-o try{secventa}; catch(Clasa Exceptiei 1 variabila 1)
clasa. { secventa 1}; catch(Clasa Exceptiei 2 variabila 2)
Deosebire intre variabile statice si nestatice: { secventa 2};
Variabilele statice apartin clasei, adica au aceeasi valoare catch(Clasa Exceptiei N variabila N){ secventa N};
pentru toate obiectele clasei respective. [finally{secventa finalizatoare}];
Variabilele nestatice apartin obiectului(instantei), deci au Ce deosebire e intre exceptii si erori?
valori diferite de la un obiect la altul. Deosebirea consta in faptul ca exceptiile sunt considerate
Deosebiri intre metodele statice si nestatice: ca pot fi tratate prin program, si erorile sunt considerate
Metodele statice pot folosi numai variabilele statice ale mai curand nerecuperabile.
clasei respective, in timp ce metodele nestatice pot folosi La ce serveste clauza" Throws"
atat variabilele statice, cat si pe cele ale instantei. Trebuie sa contina exceptiile verificabile care pot fi
Deosebiri intre datele sau metodele publice si metodele generate intr-o metoda si nu sunt tratate in aceea metoda.
private: Prin ce comanda se cere executarea unei aplicatii?
Dpdv al modului de acces, datele si metodele unei clase Java <nume_aplicatie>
pot di publice sau private. Cele publice sunt accesibile Prin ce comenzi se realizeaza compilarea si executarea
din orice alta clasa, in timp ce cele private sunt accesibile unei aplicatii.
numai din clasa careia ii apartin. compilare- javac<fisier_sursa>
Principalele tipuri de produse software: executare- java<nume_aplicatie>
- Aplicatie: un produs care se instaleaza pe un anumit Ce se intelege prin portabilitatea programelor?
calculator si functioneaza direct sub controlul sistemului In timpul executiei, atat programul, cat si datele trebuie
de operare, avand acces la toate resursele calculatorului sa se gaseasca in memoria calculatorului codificate
respective. binary, intr-un format specific calculatorului respective.
- Applet: un program care se transmite sub forma de cod De aceea, nu pot fi portate programele scrise intr-un
de octeti prin reteaua de calculatoare si este executat in limbaj care este dependent de arhitectura calculatoarelor,
cadrul unui navigator de Web. cum sunt limbajele de asamblare.
- Servlet: un program care se executa pe un server din Neutralitatea arhitecturala:
retea. Se refera la faptul ca fiecare calculator, in functie de
caracteristicile sale(arhitectura, tipul procesorului,

3
capacitatea de memorie) trebuie sa contina un mediu de     }
executie JAVA aparte. Un program destinat unui <nume_clasa> - este numele clasei. Trebuie sa
calculator mic poate fi executat sip e un calculator mare, inceapa cu o litera si este format numai din litere, cifre si
dar nu si invers. eventual liniuta de subliniere.
Ce este Masina Virtuala Java (JVM)? //corpul metodei main – este o succesiune de
Masina virtual JAVA reprezinta un calculator abstract. instructiuni si comentarii care respecta sintaxa limbajului
Ca si calculatoarele reale, aceasta dispune de un set de JAVA.
instructiuni, un set de register si utilizeaza diferite zone Ce este un comentariu?
de memorie. Acestea sunt component logice abstracte. Este un text care poate fi introdus in programul sursa, dar
JVM se poate implementa ca interpretor de cod binary, nu este luat in consideratie de compilator si deci nu are
compilator, dar sa se pastreze functionalitatea. effect in timpul executiei programului.
Ce sunt JDK 1.0, JDK 1.1, JDK 1.2? Ce fel de comentarii pot aparea in fisierele JAVA?
Sunt versiuni successive ale setului de dezvoltare JAVA - Comentarii care se pot extinde pe una sau mai multe
(Java Development Kit). linii ( /* <comentariu> */ );
Ce este SDK si ce legatura este intre JDK si SDK? - Comentarii de sfarsit de linie, care incep cu // si
SDK = Software Development Kit. Legatura consta in continua pana la sf liniei respective;
faptul ca variant JDK 1.2 a fost redenumita, in present - Comentarii care sunt destinate reproducerii in
numindu-se Java 2 Platform SDK. documentatia clasei ( /** <comentariu> */ ).
Ce este API? Ce este o lista ascunsa si prin ce clasa se realizeaza?
API = Application Programming Interface. Este o Lista ascunsa din care se vede un singur articol(cel care
componenta importanta pentru programatori a setului de este selectat) javax.swing.JComboBox
dezvoltare JAVA. Aceasta este acea parte din Explicati ciclul de test initial si care este instructiunea
documentatie, in care se da specificatia claselor, prin care se implementeaza?
descrierea riguroasa a modului in care clasa respective while(expresie)instructiune;
este vazuta de catre prog de aplicatie. La intalnirea acestei instructiuni se evaluiaza expresia si
Ce este Java API? (Application Programming Interface) daca aceasta are valoarea 1 (conditie indeplinita) se
Este descrierea unui set standard de pachete necesare executa instructiunea.
programarii in JAVA. Explicati ciclul de test final si care este instructiunea prin
Ce platforme de dezvoltare se folosesc in prezent? care se implementeaza in Java?
JAVA 2 Platform, Standard Edition (J2SE) – do instructiune
pentru dezvoltarea aplicatiilor obisnuite; while (expresie);
JAVA 2 Platform, Enterprise Edition (J2EE) – se executa instructiunea se evaluiaza expresia,daca
pentru serverele de intreprindere; are valorea 1(se executa instructiunea)Se repeta cat
JAVA 2 Platform, MicroEdition (J2ME) – valoarea expresiei este 1.
pentru utilizarea pe calculatoare de capacitate foarte Ce este o secventa Escape .DAti exemple?
mica, incorporate in echipamente electrice sau sunt folosite pentru a reprezenta caractere in orice loc din
electronice. textul sursa si dupa "\"se considera ca urmeaza o
Ce este un browser? secventa escape.
Este un program special, numit navigator de hypertext, exemple : "\b"deplasarea la stanga cu o
prin care acesta din urma este citit. pozitie"\n"trecerea la linie noua.
Ce este WWW? Cum se reprezinta un sir in program?
Este un system de regasire a informatiei folosit in Un sir se reprezinta in program printr-o succesiune de
Internet, in care documentele sunt hipertexte distribuite caractere cuprinse intre ghilimele.
pe calculatoarele din intreaga retea. Navigarea pe WWW Metode pentru afisarea pe ecran a sirurilor!!
se face cu un navigator de Web. - System.out.println(<sir>)
Ce navigatoare de Web cunoasteti? - System.out.print(<sir>)
Netscape Naviagtor, Internet Explorer, Mozilla Firefox, Ce este o instructiune?
Opera, Google Chrome, Iron. Este un enunt, care indica una sau mai multe actiuni pe
Dati sablonul unei aplicatii simple si explicate care trebuie sa le execute calculatorul.
componentele Ce este instructiunea vida si cum se scrie?
class <nume_clasa> {  Instructiunea vida este o instructiune simpla formata
        public static void main(String args[]) {  numai din ; (punct si virgula).
           // corpul metodei main  Ce este o instructiune expresie?
        } 

4
Sunt formate dintr-o expresie de atribuire, de Operatorul de negatie este un operator unar fara effect
incrementare/decrementare sau de invocare de metoda, lateral si se reprezinta prin !.
urmata de caracterul “ ; ” Ce sunt operatorii logici & si &&?
Ce este o instructiune de atribuire ? Acesti operatori realizeaza operatia logica SI. Sunt
Este o expresie de atribuire sau de atribuire compusa operatori logici binary.
urmata de caracterul “ ; ”. Ce sunt operatorii logici | si ||?
Ce este o instructiude de invocare de metoda? Acesti operatori realizeaza operatia logica SAU. Sunt
Este o instructiune prin care se cere executarea unei operatori logici binary.
metode, transmitandu-i-se acesteia valorile parametrilor. Ce este precedenta operatorilor?
Se afiseaza pe ecran sirul primit ca parametru. Precedenta operatorilor reprezinta un nivel de prioritate
In ce consta teorema de structura? in aplicarea operatorului respectiv.
Orice program poate fi inlocuit folosind numai 3 In ce ordine se aplica operatorii cu acelasi nivel de
structuri de control fundamentale: structura secventiala, precedent?
alternative si repetitive. Se aplica de la stanga la dreapta.
Ce sunt identificatorii si cum se alcatuiesc ei in JAVA? In ce ordine se evalueaza operanzii unui operator binar?
Identificatorii sunt nume date programelor sau Se evalueaza inainte de a se aplica operatorul respectiv,
componentelor acestora(clase, metode, variabile). Ei se operandul din partea stanga se evalueaza inaintea celui
aleg de catre programator, respectand anumite reguli. din partea dreapta.
Ce sunt cuvintele cheie? Ce este concatenarea si care se operatorul prin care se
In orice limbaj de programare, exista un set de cuvinte, realizeaza?
numite cuvinte cheie, care sunt considerate simboluri Este operatia de unire a doua siruri realizata cu
sintactice si nu pot fi folosite in program ca operatorul binar "+", exemplu: "abc"+"123" rezulta
identificatori. "abc123".
Ce este un literal? Ce sunt variabilele?
Literalii sunt reprezentarile in fisierele sursa ale valorilor Variabila este un nume caruia i se asociaza o valoare.
constante. (caractere, siruri) Variabila este un simbol dat unei valorii care apartine
Ce valori speciale pot avea literali in virgula mobila? unei multimi de valori ce constituie domeniul de definitie
Literalii de tip "float" se termina cu "f" sau "F", in timp al variabilei respective.
ce literalii de tip "double" nu au astfel de sufixe. Ce este numele variabilei?
Atat la tipul float cat si la tipul double, valoarea 0.0 are Numele variabilei este un identificator.
semn: poate exista cu semnul "+0.0" si "-0.0". Ce se intelege prin declararea variabilei?
Ce separatori se folosesc in limbajul JAVA? Prin declararea variabilei se intelege precizarea, pentru
{ } ( ) [ ] ; , . compilator, a tipului si numelui acesteia.
Ce sunt operatorii? In ce mod se initializeza o variabila?
Sunt simboluri ale unor operatii. Poate fi format din unul Se face atunci cand i se da prima data o valoare,o valoare
sau mai multe caractere. din spatiu memorie.Daca la declararea ei nu este
Ce deosebire exista intre operatori = si ==? initializata explicit ea este initializabila cu o valoarea
a)= operator de atribuire si impune ca operandul stang sa implicita specificata la descrierea fiecarui tip.
fie variabila Ce sunt variabilele locale si care este domeniul lor de
==ambii operanzii pot fi expresii vizibilitate?
b)=are efect lateral sau modifica valoarea variabilei din Variabilele declarate intr-un bloc sunt variabilele locale
stanga ale blocului respective. Domeniul de vizibiliate incepe in
==nu are efect lateral deci valorile ambilor operanzii locul din program in care acesta a fost declarata si se
raman neschimbate incheie la sfarsitul blocului care contine declaratia
c)a=b identica cu valoarea atribuita variabilei a si are respective.
tipul aceteia Ce este o variabila finala?
a==b este intotdeauna de tip boolean, indiferent de tipul Se numesc variabile finale, acele variabile ale caror
operanzilor valori nu pot fi modificate prin program.
Ce este efectul lateral al operatorului? Cum se declara variabilele referinta?
Efectul lateral al operatorului consta in modificarea Declararea variabilelor referinta se face prin folosirea
valorii operanzilor. unui nume de clasa.
Care este operatorul de negatie, asupra carui tip de date Ce se gaseste in zona de memorie aferenta unei variabile
se aplica si ce efect are? de tip primitive?
Se gaseste chiar valoarea variabilei.

5
Ce este un tip de date? long[] k,m; =>matrice
Un tip de date este unul din conceptele fundamentale ae float[] u,v
programarii calculatoarelor. Este o multime de valori, Ce semnificatie are declaratia int a, b[], c;?
asociata cu o multime de operatii care se pot face asupra a, c sunt variabile simple de tip double, iar c[] este
valorilor primitive. variabila referinta la tabloul de tip int.
Ce tipuri de date exista in limbajul JAVA? Cum se initializeaza un tablou unidimensional?
- Tipul Boolean; Indicand valorile componentelor tabloului, separate prin
- Tipuri numerice: virgule si cuprinse intre accolade.
Tipuri intregi: byte, short, int, long Ce este o metoda?
Tipuri reale: float si double Metoda este o functie, care intoarce o valoare si poate
Tipul char avea, de asemenea, efect lateral.
Care este multimea de valori a tipului Boolean? Care este cea mai simpla forma de declarare a unei
Multimea de valori a acestui tip este {true, false}. metode?
Care sunt tipurile de date numerice? tip_valoare_intoarsa
- Tipuri intregi: byte, short, int, long; nume_metoda(declaratii_de_argumente) {
- Tipuri reale(in virgule mobile): float si double; corpul_metodei
- Tipul char. }
Ce fel de date contine tipul char? Cum este invocata o metoda a instantei?
Datele de tip char sunt caractere, adica simboluri referinta_la_obiect.nume_metoda(parametri_efectivi)
tipografice elementare: litere, cifre. Ce reprezinta corpul metodei?
Ce este operatia de atribuire? Reprezinta secventa de instructiuni prin care se
Se poate aplica tuturor tipurilor de date, deci si celor calculeaza valoarea functiei respective si/sau se
numerice. efectueaza actiunile care constituie efectele laterale ale
Ce contine o declaratie de tip? acesteia.
Sunt instructiuni prin care se specifica tipul, numele si, Care este metoda care ar trebui sa existe in mod
daca este necesar, valoarea initiala a variabilelor folosite obligatoriu in orice aplicatie?
in program. ( Ex. Tip variabila1, variabila2, . . . metoda principala care incepe executia aplicatiei
,variabilaN) "MAIN"
Ce este o expresie? Ce deosebire e intre metodele statice si nestatice?
O expresie este o combinative permisa de simboluri, care Metodele statice pot invoca numai campurile statice ale
reprezinta o valoare. clasei respective, in timp ce cele nestatice pot invoca si
Cum se stabileste tipul expresiei? atat campurile statice, cat sip e cele nestatice.
Tipul expresiei este acelasi cu tipul valorii ei.(expresii de Cum se invoca o metoda statica?
tip Boolean, int, float, double) nume_clasa.nume_metoda(parametri_efectivi) 
Cum se declara argumentele? Cum se invoca o metoda nestatica?
tip_argument nume_argument referinta_la_obiect.nume_metod?(parametri_efectivi) 
Ce forma si ce semnificatie are instructiunea return? Ce rol are metoda toString?
Forma: return expresie. Se evalueaza expresia Intoarce reprezentarea sub forma de sir de caractere a
“expresie” si se incheie executarea functiei respective, obiectului caruia i se aplica.
intorcand valoarea astfel obtinuta. Ce rol are metoda clone?
Ce este un tablou? Are rolul de a intoarce o clona a obiectului caruia I se
Este o structura de date de acelasi tip, numite aplica, deci intoarce un obiect identic cu acesta, dar
compunente ale tabloului, care sunt specificate prin situate la o alta adresa de memorie si avand o alta
indici. In programare, poate fi privit ca o colectie referinta.
indexata de variabile de acelasi tip. Ce este o metoda statica?
Cum se declara un tablou unidimensional? Metodele care contin modificatorul “static” se numesc
cazA) intr-o declaratie de variabile se pune simboluri statice sau ale clasei.
[]dupa numele variabilei referinta Tablou Ce este signatura metodei?
exemplu: int a,b,c[],d,e[]; Signatura metodei consta din numele acesteia, insotit de
String s1,st1[],s2[]; =>Vector lista de argumente.
cazB)Parantezele se pun dupa numele tipului de date sau Pot exista in aceeasi clasa mai multe metode cu acelasi
al clasei,toate variabilele din declaratia respectiva sunt nume?
considerate drept referinte la tablouri:
exemplu: int[] i,j;

6
Da, pot exista 2 sau mai multe metode cu acelasi nume, care le introduce de la tastatura sub forma unor linii de
dar ele difera prin signatura (numar si tipul text, folosind un anumit limbaj de comanda. Exemplele
argumentului). cele mai cunoscute sunt limbajele de comanda ale
Cum se face transferul argumentelor de la metoda sistemelor de operare MS-DOS si Unix.
invocatoare la cea invocate? Care sunt in prezent cele mai larg folosite interfete
Transmiterea argumentelor metodelor se face prin utilizator grafice?
valoare. Sistemul Windows al firmei Microsoft si cele de tip X-
Ce este o metoda sincronizata si la ce foloseste? Window folosite in sistemele de operare din categoria
Se numeste metoda sincronizata orice metoda care Unix.
contine in antetul sau modificatorul synchronized. Ce efect are ca o clasa implementeaza o interfata?
Ce este un monitor? Daca o clasa implementeaza o interfata, aceasta contine
Se numeste monitor instanta unei clase care contine cel metoda publica si variabilele finale publice ale acesteie.
putin o metoda sincronizata, sau o metoda care contine Ce este interfata utilizator?
un bloc sincronizat. Interfata utilizator, numita si interfata om-masina, este
Ce este o metoda recursiva? mijlocul de comunicare intre un sistem informatic si
O metoda care se invova pe sine insasi se numeste utilizator.
recursiva. Ce este interfata utilizator grafica?
In ce situatii este invocate metoda finalize()? Interfata utilizator grafica este o interfata om-masina care
Este invocata de colectorul de reziduuri, atunci cand permite operatorului sa dea comenzi si sa introduca date
acesta determina ca nu mai exista referinte catre obiectul prin actionarea unor obiecte grafice vizualizate pe ecran:
respectiv. butoane, pictograme, meniuri etc.
In ce scop este redefinita metoda finalize(): Ce sunt obiectele grafice?
Poate fi redefinita in orice alta clasa, pentru a elibera Butoane, pictograme, meniuri etc.
resurse sau a efectua alte actiuni necesare inainte de Ce categorii de componente grafice cunoasteti?
distrugerea obiectului respectiv. Componente de control: butoane, butoane radio, casete
Ce este metoda finalize()? de validare, liste, liste ascunse, meniuri, rigle ajustabile,
protected void finalize() throws Throwable campuri de text.
Ce este o metoda finala? Ce sunt evenimentele in cazul interfetei utilizator
Sunt metode care nu mai pot fi redefinite in clasele grafice?
redivate. Ele se declara cu modificatorul final Se numeste eveniment orice modificare care are loc fie in
Care sunt modificatorii de acces pentru campuri si starea dispozitivelor de intrare, fie in cea a obiectelor
metode. grafice de pe ecran: apasarea sau eliberarea unei taste,
- Private - pentru a specifica campuri sau metode deplasarea mouse-ului, apasarea sau eliberarea unui
private; buton al mouse-ului, deschiderea sau inchiderea unei
- Public - pentru campuri sau metode publice; ferestre, efectuarea unui clic de mouse pe un obiect de
- Protected - pentru campuri sau metode protejate. control (buton, caseta de validare, bara de defilare etc. ),
Ce se intelege prin redefinirea metodelor? intrarea cursorului de mouse in campul activ al unui
Redefinirea unei metode se face declarand in subclasa o obiect grafic sau parasirea acestuia etc.
metoda avand aceeasi signatura cu una din superclasa. Cum poate fi comandata prin interfata utilizator grafica
Ce este codul de dispersie si prin ce metoda se obtine? incheierea executarii aplicatiei?
Este un numar intreg(de tip int) si se obtineprin metoda Pentru ca la actionarea butonului de inchidere din coltul
hashCode(). din dreapta-sus al ferestrei sa se inchida nu numai
Ce este interfata? fereastra respectiva, ci si aplicatia, este necesar ca
Este o specificatie care descrie metodele publice si metoda windowClosing() a ascultatorului de fereastra sa
variabilele finale publice pe care trebuie sa le aiba o contina invocarea metodei System.exit(0) din clasa
clasa care implementeaza interfata respectiva. Mijlocul System.
de comunicare intre un sistem informativ si utilizator. Ce este AWT?
Ce categorii de interfete utilizator cunoasteti? AWT (engleza: Abstract Windowing Toolkit - setul de
* interfata prin linie de comanda; dezvoltare de ferestre abstracte)  - este un set de clase
* interfata grafica. care permit realizarea de interfete grafice in care se
Ce este un limbaj de comanda si ce astfel de limbaje folosesc obiectele grafice specifice platformei pe care se
cunoasteti? executa programul.
In modul de comunicare prin linie de comanda , Prin ce pachete se realizeaza AWT pe platformele Java?
operatorul uman transmite calculatorului comenzi, pe

7
java.awt, java.applet, java.awt.color si java.awt.event, mouse pe articolul respectiv. Lista poate fi cu selectie
java.awt.* simpla sau cu selectie multipla, dupa cum pot fi selectate
Ce este JFC/Swing? simultan unul sau mai multe articole.
JFC este un set de pachete de clase, care extind Ce este o lista ascunsa si prin ce clasa se realizeaza?
posibilitatile oferite de AWT, pentru realizarea de Lista ascunsa este o lista din care se vede un singur
interfete utilizator de calitate superioara. Dintre acestea, articol (cel care este selectat).
cele mai larg folosite sunt constituie setul cunoscut sub Prin ce clasa se realizeaza campul de text si ce contine
numele de cod Swing (sau JFC/Swing), care ofera el?
posibilitatea de a realiza interfete grafice al caror aspect Campul de text este principalul instrument al interfetei
nu depinde de platforma pe care se executa programul. grafice prin care utilizatorul introduce date de la
Prin ce pachete se realizeaza JFC/Swing pe platforma tastatura. El se prezinta sub forma unei ferestre
Java 2? dreptunghiulare editabile, in care se poate introduce o
javax.swing si javax.swing.event, javax.swing.* singura linie de text. De obicei, prin intermediul
Care sunt caracteristicile componentelor din JFC/Swing? campului de text se introduce o singura valoare numerica
Aspect, stare si comportament. aspect, stare si sau un sir de caractere. In JFC/Swing, campurile de text
comportament. se realizeaza ca instante ale clasei
Cum se stabileste aspectul componentelor din javax.swing.JTextField.
JFC/Swing? Ce evenimente genereaza un camp de text si cand le
Aspectul este dat de figura prin care este reprezentata pe genereaza?
ecran componenta respectiva. Fiecare clasa de Cand campul de text este activ si se apasa tasta Enter,
componente ofera un aspect tipic al instantelor sale. In este generat un eveniment de actiune din clasa
JFC/Swing programatorului i se pun insa la dispozitie java.awt.ActionEvent.
metode si clase prin care poate modifica aspectul Ce este o lista in JFC/Swing si prin ce clasa se
componentelor. realizeaza?
Ce reprezinta clasa AbstractButton? O componenta care contine articole selectabile.
Clasa javax.swing.AbstractButton defineste Selectarea lor se face de catre utilizator, prin click de
caracteristicile comune ale diferitelor tipuri de butoane mouse pe articolul respectiv. Lista poate fi cu selectie
din JFC/Swing. simpla sau cu selectie multipla, dupa cum pot fi selectate
Ce evenimente genereaza un AbstractButton? simultan unul sau mai multe articole.
* ActionEvent, cand se actioneaza asupra lui; Ce este o rigla ajustabila si prin ce clasa se realizeaza?
* ChangeEvent, cand isi modifica starea; Clasa javax.swing.JSlider ofera o componenta care are
* ItemEvent, cand butonul este selectat sau deselectat. aspectul unei rigle prevazute cu cursor. Prin deplasarea
Ce reprezinta clasa JToggleButton? cursorului cu ajutorul mouse-ului se modifica valoarea
Clasa javax.swing.JToggleButton este derivata din indicata de rigla. Valoarea minima si cea maxima de pe
AbstractButton si reprezinta butoane cu doua stari scala riglei si valoarea unei diviziuni se indica prin
stabile. Ce este o caseta de validare si prin ce clasa se program. La deplasarea cursorului, rigla genereaza
realizeaza? Casetela de validare este un obiect de control evenimente din clasa javax.swing.event.ChangeEvent,
cu doua stari stabile. In JFC/Swing casetele de validare care sunt ascultate cu o clasa care implementeaza
se realizeaza folosind clasa javax.swing.JCheckBox, care interfata javax.swing.event.ChangeListener.
este derivata din clasa JToggleButton. Care este dispozitivul electronic pe care il simuleaza o
Ce este un buton radio si prin ce clasa se realizeaza? rigla ajustabila?
Butonul radio este un buton cu doua stari stabile, care Rolul riglei poate fi asemanat cu cel al unui dispozitiv de
face parte dintr-un grup de butoane, astfel ca la un ajustare continua, cum este potentiometrul din aparatura
moment dat numai unul dintre ele poate fi "selectat". In electronica.
momentul in care este selectat ("apasat") un buton al Ce orientare poate avea o rigla ajustabila?
grupului, se deselecteaza automat cel care era selectat JSlider.HORIZONTAL sau JSlider.VERTICAL;
anterior. In JFC/Swing, butoanele radio sunt realizate ca Cum se poate obtine valoarea indicata de rigla?
instante ale clasei javax.swing.JRadioButton. Gruparea getValue()
butoanelor se face folosind clasa Cum se pot trasa diviziunile riglei ajustabile?
javax.swing.ButtonGroup. * public void setMajorTickSpacing(int n) - stabilirea
Ce este o lista in JFC/Swing si prin ce clasa se valorii diviziunilor mari
realizeaza? * public void setMinorTickSpacing(int n) - stabilirea
O componenta care contine articole selectabile. valorii diviziunilor mici
Selectarea lor se face de catre utilizator, prin click de

8
* public void setPaintTicks(boolean b) - determina daca Prin ce clasa se realizeaza un meniu utilizabil intr-o bara
diviziunile vor fi vizibile de meniu?
* public void setPaintLabels(boolean b) - determina daca javax.swing.JMenu
vor fi afisate valorile numerice ale diviziunilor. Prin ce clase se realizeaza articolele de meniu
Cum se stabileste intervalul de valori al riglei ajustabile? javax.swing.JMenuItem
public JSlider(int orientation, int min, int max, int javax.swing.JcheckBoxMenuItem.
value); Este insa posibil ca un articol de meniu sa fie el insusi un
* orientation - orientarea riglei, care poate fi meniu (din clasa JMenu).
JSlider.HORIZONTAL sau JSlider.VERTICAL; Ce este un meniu derulant si prin ce clasa se realizeaza?
* min, max - valorile minima si maxima de pe scala Spre deosebire de meniurile cu bara, meniurile derulante
riglei; sunt tratate ca niste componente obisnuite, care pot sa fie
* value - valoarea indicata initial de cursorul riglei afisate prin program, atunci cand este necesar. In
(trebuie sa fie in intervalul [min,max]). JFC/Swing, meniurile derulante se realizeaza ca instante
Ce este un meniu? ale clasei javax.swing.JPopupMenu. In rest, meniul pop-
La fel ca listele sau butoanele radio, meniurile permit up se comporta la fel ca un meniu cu bara.
utilizatorului sa aleaga una din mai multe optiuni Ce sunt componentele de afisare needitabile?
posibile. Ce contine un meniu? Componentele de afisare sunt cele care servesc pentru a
Unul sau mai multe articole. afisa anumite texte sau imagini si pot fi needitabile sau
Cum se adauga un articol la un meniu? editabile.
public JMenu add(JMenu c) Ce componente de afisare needitabile cunoasteti?
Ce evenimente genereaza un articol de meniu? javax.swing.JLabel - pentru realizarea unor
Atunci cand este selectat un articol de meniu simplu (din "etichete" in care pot fi afisate texte sau imagini, fara a
clasa JMenuItem), acesta actioneaza ca un buton putea fi editate de utilizator;
obisnuit, adica genereaza un eveniment de actiune javax.swing.JTooltip - pentru afisarea de "inscriptii
(ActionEvent). Daca se selecteaza un articol de meniu volante", cand se pune cursorul de mouse deasupra unei
sub forma de caseta de validare (din clasa alte componente;
JCheckBoxMenuItem), acesta se comporta ca o caseta de javax.swing.JProgressBar - pentru realizarea unor
validare, adica genereaza un eveniment de articol "bare de progres" adica a unor bare de lungime variabila,
(ItemEvent). Ascultarea acestor evenimente se face cu care arata cum evolueaza realizarea unei anumite
clase care implementeaza interfetele ActionListener, activitati (de la 0% la 100%).
respectiv ItemListener. Ce sunt componentele de afisare editabile?
Cum se programeaza afisarea pe ecran a unui meniu pop- Componentele de afisare editabile permit utilizatorului
up? operatii de editare in timpul executarii programului.
Afisarea meniului pop-up trebuie programata, folosindu- Ce componente de afisare editabile cunoasteti?
se in acest scop metoda din clasa JPopupMenu public Pentru editare de texte exista clasele
void show(Component invoker, int x, int y); in care javax.swing.JTextArea, javax.swing.JTextPane si
invoker este referinta la componenta in spatiul careia javax.swing.JEditorPane. In aceeasi categorie pot fi
trebuie sa apara meniul, iar x si y sunt coordonatele incadrate si clasele javax.swing.JTextField si
punctului in care acesta va fi afisat. javax.swing.JpasswordField.
Ce categorii de meniuri exista in JFC/Swing? Ce sunt instantele clasei JTextArea si cum se comporta
* meniuri cu bara, care pornesc dintr-o bara situata la ele?
partea superioara a ferestrei aplicatiei; Instantele clasei javax.swing.JTextArea (zona de text)
* meniuri derulante (pop-up), care apar in pozitia in care sunt suprafete de afisare a unor texte editabile cu mai
se gaseste cursorul de mouse. multe linii. Componenta are comportamentul unui editor
Unde poate fi plasat un meniu cu bara? de text simplu: permite sa se introduca text de la
Bara de meniu se poate plasa, daca este necesara, numai tastatura, sa se stearga, sa se adauge sau sa se insereze.
la partea superioara a ferstrei aplicatiei. Care este radacina ierarhiei claselor de componente?
Prin ce clasa se realizeaza bara de meniu? Component
javax.swing.JMenuBar. Ce rol are clasa Component si din ce pachet face parte?
Ce contine bara de meniu? Orice interfata utilizator grafica este un obiect grafic
Una sau mai multe meniuri. structurat, in alcatuirea caruia intra componente grafice.
Prin ce metoda se pune bara de meniu in fereastra In sistemele AWT si JFC/Swing toate componentele
aplicatiei si carei clase ii apartine aceasta metoda? grafice fac parte din clase care constituie un arbore, a
public void setJMenuBar(JMenuBar menubar) carui radacina este clasa Component.

9
Ce metode ale clasei Component cunoasteti? Orice buton poate avea un text, care poate fi pus prin
* public boolean isVisible();    metoda void setText(String text) si poate fi aflat prin
* public void setVisible(boolean visible); metoda String getText();???
* public boolean isShowing();    Cum se poate pune o imagine intr-o componenta?
* public Point getLocation();    Orice buton poate avea cel putin o pictograma, care
* public void setLocation(Point location); poate fi pusa prin metoda void setIcon(Icon defaultIcon)
* public Dimension getSize(); si obtinuta prin metoda Icon getIcon();???
Ce deosebire este intre componentele atomice si Ce este o mnemonica?
containere? Orice buton poate avea o mnemonica, adica i se poate
Containerele sunt componente grafice care contin alte asocia o tasta, a carei apasare are acelasi efect cu
componente. Containerele apartin unor clase care apasarea butonului respectiv. Mnemonica se pune cu
formeaza o ierarhie, a carei radacina este clasa metoda void setMnemonic(int mnemonic), al carei
Container. Clasa Container argument este codul tastei care trebuie actionata;
este derivata din clasa Component. Aceasta inseamna ca Care este clasa folosita in JFC/Swing pentru fereastra
orice container este o el insusi componenta, deci un principala a aplicatiei?
container poate sa contina alte containere. Clasa JFrame din pachetul javax.swing, sau este o
Care este clasa prin care se realizeaza bordurile? subclasa a acesteia.
JComponent Ce contin la partea superioara instantele clasei JFrame?
Care este superclasa clasei JComponent si ce In mod obisnuit, instantele clasei JFrame sunt ferestre,
semnificatie are aceasta? care au la partea superioara o bara de titlu
Clasa abstracta javax.swing.JComponent extinde clasa Ce metode ale clasei JFrame cunoasteti?
java.awt.Container. * public String getTitle();
Ce este un text volant si cum este el atasat unei public void setTitle(String titlu);
componente? * public void setSize(int latime, int inaltime);
public void setToolTipText(String text); Text * public void setLocation(Point location);.
explicativ volant (engleza: Tool Tip), care contine Care este componenta instantei clasei JFrame la care se
indicatii care apar cand se pune cursorul mouse-ului pe adauga componentele interfetei grafice?
componenta respectiva, fara a apasa butonul de mouse. Containerul numit contentPane.
Cum se adauga bordura unei componente? In ce clasa exista metoda getContentPane() si la ce
Prin metoda clasei JComponent:     public void foloseste?
setBorder(Border border); JFrame. Se obtine o referinta la contentPane.
Care sunt componentele de control si ce rol au? Ce este programarea orientata pe evenimente?
Componentele de control sunt dispozitive de intrare Interactiunea dintre operator si aplicatie intr-un sistem
virtuale, usor de utilizat, prin intermediul carora bazat pe evenimente decurge astffel: operatorul provoaca
utilizatorul poate introduce anumite comenzi. Din generarea unui eveniment, actionand asupra tastaturii,
aceasta categorie fac parte butoanele, riglele ajustabile, mouse-ului sau a altui dispozitiv de intrare.
listele, listele ascunse, meniurile si campurile de text. Cine are initiativa actiunilor in programarea orientata pe
Prin ce se caracterizeaza starea componentei? evenimente?
Starea componentei este data, ca la orice obiect, de Operatorul uman.
valorile campurilor sale. Care sunt obiectele care intervin atunci cand se
Prin ce se caracterizeaza comportamentul componentei? genereaza un eveniment?
Comportamentul componentei este modul in care aceasta Evenimentul este o forma de mesaj, care se transmite
reactioneaza atunci cand se actioneaza asupra ei de catre intre obiectele-sursa si obiectele-ascultatori.
utilizator sau cand este invocata o metoda si consta in Ce sunt evenimentele de mouse si cum sunt ele generate?
modificarea starii si a aspectului si in generarea de Evenimentele de mouse sunt instante ale clasei
evenimente. java.awt.event.MouseEvent si sunt generate de catre
Ce este un text volant si cum este el atasat unei orice componenta a interfetei grafice, atunci cand asupra
componente? ei se actioneaza cu mouse-ul.  Clasa MouseEvent este
public void setToolTipText(String text); Text derivata din clasa java.awt.event.InputEvent.
explicativ volant (engleza: Tool Tip), care contine Care sunt evenimentele de mouse?
indicatii care apar cand se pune cursorul mouse-ului pe * a fost apasat un buton al mouse-ului
componenta respectiva, fara a apasa butonul de mouse. (MOUSE_PRESSED);
Cum se poate pune un text intr-o componenta? * a fost eliberat un buton al mouse-ului
(MOUSE_RELEASED);

10
* s-a facut click de mouse, adica un buton al acestuia a sursa transmite evenimentele generate de ea numai catre
fost apasat si eliberat imediat (MOUSE_CLICKED); ascultatorii care s-au inregistrat la sursa respectiva, iar
* cursorul mouse-ului a intrat intr-o componenta ascultatorul primeste evenimente numai de la sursele la
(MOUSE_ENTERED); care s-a inregistrat.
* cursorul mouse-ului a iesit din componenta Ce deosebire este intre evenimentele de nivel jos si cele
(MOUSE_EXITED). semantice?
Cum sunt ascultate evenimentele de mouse? Numele claselor de evenimente de nivel coborat indica
Pentru ascultarea evenimentelor de mouse se folosesc fie componenta, fie dispozitivul de intrare care le-a
interfetele generat, de exemplu: ComponentEvent, WindowEvent,
java.awt.event.MouseListener, MouseEvent, KeyEvent. Numele claselor de evenimente
java.awt.event.MouseMotionListener semantice indica mai curand tipul de eveniment, decat
javax.swing.event.MouseInputListener. sursa acestuia, de exemplu: ActionEvent, TextEvent.
Ascultatoarele de mouse se pot obtine, de asemenea, prin Care este radacina claselor de evenimente generate de
extinderea claselor obiectele interfetei grafice?
java.awt.event.MouseAdapter, java.awt.AWTEvent (care extinde clasa
java.awt.event.MouseMotionAdapter java.util.EventObject din pachetul java.util.)
javax.swing.event.MouseInputAdapter. Ce clase de evenimente cunoasteti?
Ce sunt evenimentele de tasta si cum sunt ele generate? java.awt.event; javax.swing.event
De cate ori se apasa sau se elibereaza o tasta, Care este rolul unei clase ascultatoare de evenimente?
componenta activa a interfetei grafice genereaza un Metodele acestor clase trebuie sa reactioneze la aparitia
eveniment de tasta din clasa java.awt.event.KeyEvent evenimentelor si sa execute actiunile corespunzatoare,
Care sunt evenimentele de tasta? conform cu obiectivele aplicatiei.
a fost apasata o tasta (KEY_PRESSED); Ce fel de evenimente genereaza un buton?
a fost eliberata o tasta (KEY_RELEASED); * . ActionEvent, cand se actioneaza asupra lui;
a fost "tiparit" un caracter, adica a fost apasata si * . ChangeEvent, cand isi modifica starea;
eliberata o tasta care transmite un caracter tiparibil * . ItemEvent, cand butonul este selectat sau deselectat.
Cum sunt ascultate evenimentele de tasta? Ce este un adaptor pentru ascultarea de evenimente?
Acesta poate fi tratat cu un "ascultator de taste" care Pentru a se usura munca programatorilor, pentru unele
implementeaza interfata java.awt.event.KeyListener sau interfete care contin mai multe metode, se ofera si
care extinde clasa java.awt.event.KeyAdapter. prototipuri de clase care implementeaza interfata
In ce stare trebuie sa fie fereastra pentru a genera respectiva, numite adaptoare. De exemplu, clasa
evenimente de tasta? WindowAdapter implementeaza interfata
Activa WindowListener, clasa MouseAdapter implementeaza
Care sunt evenimentele generate de o fereastra si cum interfata MouseListener etc.
sunt ele ascultate? Ce este un gestionar de pozitionare?
Evenimentele generate de fereastra sunt instante ale Gestionarul de pozitionare este o clasa care asigura
clasei WindowEvent si sunt ascultate de instante ale unor pozitionarea si redimensionarea automata a
clase care implementeaza interfata WindowListener sau componentelor situate intr-un container, atat la crearea
extind clasa WindowAdapter. containerului, cat si la modificarea dimensiunilor
Care este modelul de evenimente folosit pe platforma acestuia.
Java 2? Care sunt interfetele gestionarilor de pozitionare?
Incepand cu JDK 1.1 s-a introdus un nou model de java.awt.LayoutManager sau subinterfata acesteia
evenimente, bazat pe delegare (engleza: Delegation java.awt.LauoutManager2.
Event Model). Care este gestionarul de pozitionare implicit pentru
Cum sunt generate evenimentele? contentPane?
Evenimentele sunt obiecte, generate de surse si captate BorderLayout
de ascultatori. Care este gestionarul de pozitionare implicit pentru Panel
Cum sunt utilizate evenimentele? si JPanel
Un eveniment generat de o sursa poate fi interceptat  de FlowLayout
mai multi ascultatori. Este posibil ca un obiect sa se Cum sunt amplasate componentele in cazul gestionarului
"asculte" pe sine insasi, deci sa isi trateze propriile BorderLayout?
evenimemte. Tocmai aceasta legatura stransa intre Cate una pe margini si  in centru.
sursele si ascultatorii de evenimente este caracteristica Cum sunt amplasate componentele in container in cazul
esentiala a "modelului delegarii": ea consta in faptul ca gestionarului FlowLayout?

11
Una dupa alta ("in flux") Ce se intampla cu componentele unui container cu
Cum sunt aliniate componentele in cazul gestionarului gestionar BorderLayout daca se modifica dimensiunile
FlowLayout? acestuia?
De la stanga la dreapta si de sus in jos. Se modifica automat.
Cum sunt amplasate componentele in cazul gestionarului Ce se intelege prin pozitionarea absoluta a
GridLayout? componentelor?
In celulele unei grile rectangulare. Toate componentele Pozitiile si dimensiunile componentelor sunt fixe si sunt
de pe aceeasi coloana sunt aliniate vertical. indicate prin program.
Cum se stabileste numarul de linii si de coloane pentru Ce metode se folosesc pentru pozitionarea absoluta a
gestionarul GridLayout? componentelor?
Desi in constructor se indica atat numarul de linii, cat public void setBounds(int x, int y, int width, int
si cel de coloane ale grilei, in realitate numai numarul de height);
linii este respectat. La stabilirea amplasarii, daca numarul public void setLocation(Point location);
lor total este mai mic sau egal cu cel de linii, toate Ce fel de containere auxiliare se folosesc pentru gruparea
componentele vor fi asezate vertical, una sub alta. Daca componentelor?
numarul de componente este mai mare decat numarul de Instante ale claselor java.awt.Panel, javax.swing.JPanel
linii, numarul de coloane se stabileste automat, prin si javax.swing.Box.
impartirea numarului de componente la cel de linii, cu Ce este un Panel sau un JPanel?
rotunjire in plus. Plasarea efectiva a componentelor in Clasa java.awt.Panel (panou) reprezinta cel mai simplu
celulele grilei astfel creeate se face apoi de la stanga la container, care este o suprafata dreptunghiulara fara
dreapta si de sus in jos, la fel ca in cazul gestionarului bordura. Gestionarul de pozitionare implicit este
FlowLayout, dar respectand alinierea verticala si FlowLayout, dar se poate pune oricare altul. Panourile
orizontala impusa de grila. sunt frecvent folosite pentru a plasa pe ele diferite
Cum sunt plasate componentele intr-un BoxLayout? componente, formand un grup care se plaseaza apoi intr-
Pe o singura directie, care poate fi orizontala sau un alt container. Clasa javax.swing.JPanel este varianta
verticala de Panel folosita in JFC/Swing, fiind un container
Ce metode ale clasei Component cunoasteti? genreric.
* public boolean isVisible();    Ce reprezinta clasa Box?
* public void setVisible(boolean visible); Intr-un container din clasa Box componentele pot fi
* public boolean isShowing();    amplasate numai pe o singura directie: orizontala sau
* public Point getLocation();    verticala.
* public void setLocation(Point location); Cum pot fi create instantele clasei Box?
* public Dimension getSize(); public static Box createHorizontalBox();
* public void setSize(int latime, int inaltime); public static Box createVerticalBox();
Cum este ghidat procesul de calcul in programarea Ce componente ascunse se pot pune intr-un container din
procedurala traditionala? clasa Box?
In programarea procedurala traditionala, procesul de * public static Component createRigidArea(Dimension
calcul este in intregime ghidat de instructiunile d) - creaza o "componenta ascunsa" de dimensiune fixa;
programului. Imediat ce s-a incheiat executarea unei * public static Component createHorizontalStrut(int
instructiuni, se trece la instructiunea urmatoare, width) - creaza o "componenta ascunsa" de latime fixa,
respectand fluxul programului respectiv. dar de inaltime variabila;
Cum se adauga un ascultator la o sursa? * public static Component createVerticalStrut(int height)
AddWindowListener(); addMouseListener(); - creaza o "componenta ascunsa" de inaltime fixa, dar de
addKeyListener(); addActionListener(); latime variabila;
Poate un obiect grafic sa-si asculte propriile evenimente? * public static Component createGlue() - creaza o
Cum se programeaza aceasta? "componenta ascunsa" cu ambele dimensiuni variabile;
addActionListener(this); Componente de afisare needitabile: etichete, indicatoare,
Care sunt zonele unui BorderLayout si cate componente etc.
pot fi plasate in fiecare zona? Componente de afisare editabile: zone de text, tabele
NORTH, SOUTH, WEST, EAST si CENTER. In fiecare editabile, selectoare de culori, selectoare de fisiere,
sector se poate plasa numai o singura componenta, care arbori.
poate fi insa ea insasi un container. Containere: panouri, panouri glisante, etc.
Ce legatura exista intre clasele Box si BoxLayout?

12
Clasa javax.swing.Box are ca instante containere Folosind metodele de analiza si conversie din clasele
speciale, care nu pot folosi decat gestionarul de acoperitoare. De exemplu, pentru un numar de tip double
pozitionare javax.swing.BoxLayout. se va folosi metoda  public double parseDouble(String
Cum se poate afla care buton a fost apasat? str) din clasa acoperitoare java.lang.Double. Intrucat
butonul are un nume al actiunii de comanda pe care o aceste metode pot sa genereze exceptii de format
exercita, sub forma unui sir de caractere; implicit, acest incorect (NumberFormatException), ele trebuie utilizate
nume este identic cu textul butonului, dar el poate fi in secvente try .. catch;
modificat prin metoda Ce reprezinta instantele clasei JTable?
void setActionCommand(String command) si poate fi javax.swing.JTable (pentru realizarea de tabele editabile)
aflat prin metoda String getActionCommand();??? Care este clasa de componente folosite la alegerea
Cum se poate determina momentul schimbarii starii unei culorii?
casete de validare? javax.swing.JColorChooser
Dintre evenimentele generate de caseta de validare, cel Ce clase de componente pot fi folosite pentru a realiza un
mai important este java.awt.event.ItemEvent, care este selector de fisier?
ascultat de clase cu interfata java.awt.event.ItemListener. javax.swing.JFileChooser
Astfel de evenimente sunt generate in momentele in care Ce metode ale clasei JTextArea cunoasteti?
caseta a fost selectata sau deselectata. Metoda prin care * public int getRows() - intoarce numarul maxim de linii
se capteaza astfel de evenimente intr-un ItemListener din zona de text;
este * public void setRows(int rows) - seteaza numarul
    public void itemStateChanged(ItemEvent e)??? maxim de linii;
Cum se poate afla in ce stare se gaseste la un moment dat * public int getColumns() - intoarce numarul maxim de
o caseta de validare? coloane din zona de text;
public boolean isSelected() din superclasa * public void setColumns(int columns) - seteaza numarul
javax.swing.AbstractButton. maxim de coloane;
Cum se face selectarea unui articol dintr-o lista? Ce sunt ferestrele de dialog?
Selectarea simpla a unui articol se face prin click de Ferestrele de dialog sunt ferestre care se afiseaza pe
mouse pe articolul respectiv. ecran numai temporar, pentru a transmite anumite mesaje
Cum poate fi determinat momentul selectarii unui articol sau a permite introducerea unor date.
din lista? Ce deosebire exista intre ferestrele de dialog modale si
De cate ori se face o selectie de articole din lista, se cele nemodale?
genereaza un eveniment din clasa Cand este afisata pe ecran o fereastra modala, toate
javax.swing.event.ListSelectionEvent, care este ascultat celelalte ferestre existente pe ecran sunt blocate (nu se
cu ajutorul unei clase care implementeaza interfata poate actiona asupra lor), pana cand se incheie lucrul cu
javax.swing.event.ListSelectionListener.??? fereastra de dialog respectiva.
Cum se poate determina ce articole de lista sunt selectate Ce sunt ferestrele de dialog standard?
la un moment dat? Ferestre preconfigurate. In acest scop, in JFC/Swing a
* public int[] getSelectedIndices() - intoarce tabloul fost creata clasa javax.swing.JOptionPane.
indicilor articolelor selectate Prin ce clasa se realizeaza ferestrele de dialog in
* public Object[] getSelectedValues() - intoarce tabloul JFC/Swing?
articolelor selectate. javax.swing.JDialog
Sunt oare editabile instantele clasei JComboBox? Ce relatie exista intre fereastra de dialog si proprietarul
In mod implicit, instantele clasei JComboBox nu ei?
sunt editabile. Totusi, este posibil ca acestea sa fie facute Fereastra de dialog poate avea ca "proprietar" (owner) o
editabile, in care caz ele se comporta ca o combinatie instanta a claselor java.awt.Frame, javax.swing.JFrame,
intre lista si campul de text: utilizatorul poate sa java.awt.Dialog sau javax.swing.JDialog. Proprietarul se
introduca textul manual, sau poate sa aleaga unul din transmite ca argument al constructorului ferestrei de
lista. dialog. Se permite ca in loc de proprietar sa se puna
Cum se poate afla textul continut intr-un camp de text? argumentul null, in car caz se atribuie un proprietar
* prin metoda public String getText() a clasei JTextField; implicit.
* prin metoda public String getActionCommand() a Prin ce metoda se afiseaza pe ecran o fereastra de dialog?
clasei ActionEvent. public void show();
Cum se poate converti textul preluat din campul de text Prin ce metode se inchide o fereastra de dialog?
intr-o valoare numerica? public void dispose();

13
Care tipuri de ferestre pot fi create folosind metodele pixelul
clasei JOptionPane? Ce este contextul grafic?
* pentru dialog de mesaj (showMessageDialog) Modul de realizare a imaginilor si desenelor este strans
* pentru dialog de confirmare (showConfirmDialog dependent atat de echipament (hardware) cat si de
* pentru dialog de intrare (showInputDialog) sistemul de operare. Pentru a se asigura independenta de
* pentru dialog de optiune (showOptionDialog) platforma, in Java API a fost introdusa clasa abstracta
Cum se stabileste culoarea de fond a unei componente? java.awt.Graphics care este clasa de baza a tuturor
public void setBackground(Color color); contextelor grafice care permit trasarea de desene pe
Ce este culoarea de prim plan a unei componente si prin suprafata componentelor grafice realizate pe diverse
ce metoda se modifica? dispozitive fizice. Pe fiecare platforma, in mediul de
culoarea textului public void setForeground(Color executie Java, trebuie sa existe o implementare a
color); contextului grafic, adica o extindere a clasei Graphics,
Ce sunt instantele clasei Color? care contine toate campurile si metodele  acestei clase,
Culori. dar este specifica platformei respective.
Care este principalul model de culori folosit in Java? Prin ce clasa abstracta este reprezentat contextul grafic in
Utilizarea culorilor predefinite, pe care le contine sub Java API?
forma de campuri statice. java.awt.Graphics
Prin ce tip de date se exprima culorile in sistemul RGB si In ce clasa este declarata metoda paint si ce rol are ea?
care este intervalul in care acestea iau valori? Pentru desenarea pe suprafata unei componente, in clasa
RGB (engleza: red, green, blue) -Culoarea este exprimata java.awt.Component (radacina ierarhiei de clase a
printr-un numar intreg (de tip int), in care cei patru octeti componentelor) exista metoda public void
au, respectiv, valorile componentelor alpha (opacitatea), paint(Graphics g); Aceasta metoda traseaza efectiv
r, g, b  exprimate in intervalul [0..255]. Componentele desenul, folosind in acest scop contextul grafic g primit
sunt plasate astfel: alpha in bitii 24..31, r in bitii 16..23, g ca argument. Contextul grafic nu este instantiat de catre
in bitii 8..15 si b in bitii 0..7. programator, ci este transmis acestei metode de catre
Care este culoarea pentru care cele trei culori masina virtuala Java.
fundamentale RGB au valoarea 0? Cum este invocata metoda paint?
negru [r=0,g=0,b=0] Metoda paint nu este invocata explicit in program. Ea
Care este culoarea pentru care toate cele trei culori este invocata implicit (de catre masina virtuala Java)
fundamentale au valoarea 255? atunci cand componenta respectiva este afisata pe ecran
alb [r=255,g=255,b=255] sau isi modifica dimensiunile si/sau amplasarea. Daca,
La ce foloseste clasa JColorChooser? totusi, programatorul doreste sa solicite explicit
Pentru a alege culoarea in mod interactiv, in JFC/Swing desenarea, foloseste metoda public void repaint();
este prevazuta clasa javax.swing.JColorChooser. Aceasta metoda, care exista de asemenea in clasa
Instantele acestei clase sunt panouri de selectare a java.awt.Component,  nu trebuie redefinita, singurul ei
culorii, care pot fi folosite atat prin incorporarea lor intr- rol fiind de a apela metoda paint.
o fereastra obisnuita, cat si sub forma unei ferestre de In ce scop este redefinita metoda paint?
dialog. Metoda paint trebuie redefinita in program pentru orice
Pe ce fel de componente se poate face desenarea? componenta pe care dorim sa se traseze un desen. In
In principiu, desenarea se poate face pe orice aceast scop se folosesc in metoda paint metodele de
componenta grafica. Exista insa clasa java.awt.Canvas, desenare ale clasei Graphics.
ale carei instante sunt simple panouri destinate desenarii Unde se plaseaza in program redefinirea metodei paint?
(in engleza Canvas este panza pictorului). Pentru Intr-o clasa.
desenare se mai folosesc frecvent si clasele JPanel si Prin ce tip de date se exprima componentele modelului
JLabel. HSB si in ce interval de valori?
Care este sistemul de coordonate pentru reprezentari In clasa Color parametrii Hue, Saturation si Brightness se
grafice? exprima prin numere reale (tipul float) in intervalul
Sistemul de coordonate folosit pentru grafica are originea [0.0 .. 1.0].
in coltul din stanga sus al componentei, axa Ox orientata Pentru ce fel de culori HSB saturatia are valoarea 0.0?
catre dreapta, iar axa Oy orientata in jos. Coordonatele se Culoarea alba (white) se obtine punand saturatia
exprima in numere intregi (int), avand ca unitate de Saturation=0 si stralucirea Brightness=1. Daca se
masura pixelul (punctul de pe ecran). mentine saturatia la valoarea 0 si se dau stralucirii
Care este unitatea de masura folosita pe axele de diferite valori intre 0 si 1 se obtin nuantele de gri.
coordonate pentru reprezentari grafice? Cum se creeaza o instanta a clasei JColorChooser?

14
public static JDialog createDialog(Component appleturi, imagini sau secvente audio incluse in
c,String title, boolean modal, JColorChooser document, dandu-se, de asemenea, informatii privind
chooserPane, ActionListener okListener, ActionListener formatarea documentului si altele.
cancelListener); In ce zona a documentului HTML se specifica titlul
Ce modele de culori se folosesc in JColorChooser? acestuia?
* folosind un tablou de culori, in care fiecare celula este Antetul documentului
colorata in alta culoare; Cum se specifica titlul unui document HTML?
* in sistemul RGB, folosind trei rigle de ajustare a     <TITLE>Titlul documentului</TITLE>
culorilor fundamentale; Cum se marcheaza titlurile si subtitlurile de capitole intr-
* in sistemul HSB, selectand culoarea prin alegerea cu un document HTML?
mouse-ul a punctului de pe panou care are culoarea Titlurile diferitelor sectiuni ale textului (capitole,
potrivita subcapitole etc) se pun in evidenta prin faptul ca apar
Ce campuri contine un obiect al clasei Graphics? scrise cu caractere diferite de restul textului (de regula
Un obiect din clasa Graphics incapsuleaza informatia de mai mari) si sunt distantate prin cate o linie atat de textul
stare a contextului grafic la care se refera si anume:  de deasupra, cat si prin cel de dedesubt. Pentru marcarea
* obiectul din clasa Component (sau dintr-o subclasa a titlurilor se foloseste marcajul <Hn>titlu</Hn> in care n
acesteia) pe care se deseneaza;  este un numar intreg cuprins in intervalul [1, 6].
* translatie a originii sistemului de coordonate; toate Cum se marcheaza paragrafele intr-un document HTML?
coordonatele din desen sunt raportate la aceasta origine;  Fiecare paragraf este cuprins intre marcajele <P> ..
* decupajul curent (dreptunghiul in interiorul caruia se </P>.
traseaza desenul);  Este absolut necesar ca un paragraf sa se incheie cu
Ce fel de metode contine clasa Graphics? marcajul </P>?
Practic, clasa abstracta Graphics contine acele metode Folosirea marcajului de sfarsit de paragraf </P> nu este
care trebuie sa existe in orice context grafic. Continutul obligatorie. Atunci cand documentul este vizualizat in
concret al acestor metode, deci modul efectiv in care se browser, fiecare paragraf incepe de la capat de linie. In
realizeaza functiile respective, depinde de contextul interiorul paragrafului, trecerea la linie noua se face
grafic, deci de dispozitivul fizic pe care se face desenarea automat, cand se ajunge la marginea din dreapta a
si de sistemul de operare folosit. Pe programatorul de paginii.
aplicatii sau miniaplicatii in Java nu il intereseaza insa Cum se marcheaza intr-un document HTML trecerea
acest lucru, deoarece el foloseste in programele sale fortata la linie noua?
metodele clasei abstracte Graphics, fara sa se preocupe prin marcajul <br> (prescurtare de la break).
de modul in care acestea vor fi executate.  Cum se specifica, intr-un document HTML, culoarea
Ce este un hipertext? fondului unui paragraf?
Hipertextul (engleza: hypertext) este o colectie de
documente, numite si noduri sau pagini, unite intre ele prin parametrul bgcolor=culoare
prin legaturi. Cum se specifica culoarea caracterelor intr-un document
Ce sunt nodurile hipertextului? HTML?
colectie de documente. prin parametrul color=culoare
Ce este WWW?
World-Wide Web (WWW) este un sistem de regasire a Cum se specifica forma caracterelor intr-un document
informatiei distribuite pe Internet. HTML?
Ce este un browser de Web? prin parametrul face=forma.
Utilizatorul poate naviga WWW, folosind un program Care sunt principalele tipuri (forme) de caractere folosite
numit browser de web (navigator). in documentele HTML?
Ce este HTTP? Serif, sansSerif si Monospace.
Transmiterea prin Internet a paginilor WWW se face Cum se marcheaza, intr-un document HTML, legaturile
folosind un protocol special, numit HTTP (Hypertext catre alte pagini ale hipertextului?
Transfer Protocol). Legaturile cu alte documente sunt marcate prin
Ce este HTML? ancore, care sunt taguri de forma:
HyperText Markup Language (HTML) este un limbaj de <A HREF="referinta la document">text de
marcare a hipertextelor. In estenta, o pagina HTML este legatura</A> Cum sunt folosite marcajele HTML in
un fisier de text ASCII, care contine niste simboluri componentele JFC/Swing?
speciale, numite marcaje sau taguri. Prin aceste marcaje Incepand cu platforma Java 2 (SDK 1.2) in textele
se indica legaturile catre alte documente si catre introduse in componentele JFC/Swing (cum ar fi cele din

15
clasele JButton, JLabel, JPanel etc.) pot fi folosite in care calea se traseaza pornind de la directorul in care
marcaje HTML. Daca textul introdus prin metoda se gaseste documentul sursa.La indicarea caii, simbolul ..
setText() incepe cu marcajul <HTML>, el este interpretat (doua puncte succesive) inseamna deplasare cu un
ca un text HTML si tratat in mod corespunzator. Aceasta director inapoi, iar / inseamna deplasare cu un director
inseamna ca textul poate sa apara pe suprafata inainte.
componentei respective pe mai multe linii, sa aiba Cum se reprezinta, intr-o legatura HTML, o referinta la o
diferite fonturi, culori si stiluri, conform cu marcajele pagina situata pe alt calculator de pe Internet?
HTML utilizate. Daca, insa, sintaxa HTML nu este In acest caz, referinta la document este un URL (engleza:
respectata, metoda genereaza o exceptie. Ce contine Uniform Resource Locator), care este modul de adresare
marcajul <font> si ce semnificatie are? caracteristic pentru WWW. Iata exemple de URL-uri:
Exista insa si situatii cand un anumit font se foloseste     "http://www.w3.org/default.html"
numai intr-o portiune de paragraf, sau se extinde pe mai     "http://java.sun.com/docs/books/jls/html/index.html"
multe paragrafe. In acest scop se foloseste marcajul <font Ce componente ale interfetei grafice permit folosirea
parametri> text </font>. textelor HTML?
Parametrii din marcajul <font > sunt face=forma, Ectichete, butoane.
color=culoare si size=marime. Ce este un stream?
Ce este stilul textului? fluxul (engleza: stream) este o cale de comunicatie intre
In afara de forma, marimea si culoarea fontului, textul se o sursa de date si o destinatie.
caracterizeaza si prin stil: pastrand forma fontului, textul Ce deosebire exista intre fluxurile de iesire si cele de
poate sa apara ingrosat, cursiv, subliniat etc. intrare?
Cum se marcheaza stilul textului intr-un document Pentru un proces dat, toate fluxurile transmise de acesta
HTML? catre exterior se numesc fluxuri de iesire, iar cele primite
<B> ... </B> pentru text aldin, ingrosat (engleza: bold); din exterior se numesc fluxuri de intrare. In consecinta,
  <I> ... </I>  pentru text cursiv (engleza: italic); acelasi flux este de iesire in raport cu sursa si de intrare
  <U> ... </U> pentru text subliniat (engleza: underline); in raport cu destinatia.
  <strike> ... </strike> pentru text taiat cu o linie Care sunt etapele de utilizare a unui flux de iesire?
(engleza: strikethrough); * Deschiderea fluxului
  <sub> ... </sub> text scris mai mic si mai jos decat * cat timp (exista date de transmis)
textul de baza (engleza: subscript);         scriere in flux
  <sup> ... </sup> text scris mai mic si mai sus decat cel * Inchiderea fluxului
de baza (engleza: superscript). Care sunt etapele de utilizare a unui flux de intrare?
Ce este un text preformatat si cum se marcheaza el intr- * Deschiderea fluxului
un document HTML? * cat timp (exista date de citit)
S-a aratat mai sus ca asezarea textului in pagina se face         citire din flux
de catre browser, respectand marcajele de formatare din * Inchiderea fluxului
textul HTML. In consecinta, daca se modifica Ce deosebire exista intre fluxurile de caractere si cele de
dimensiunile ferestrei, se modifica si asezasea in pagina. octeti?
Spatiile si caracterele speciale din textul HTML, cum In primul caz, de la sursa la destinatie se transmite o
sunt caracterul de trecere la linie noua sau de intoarcere a succesiune de caractere Unicode (de cate 16 biti), iar in
carului sunt ignorate de browser si nu au efect la afisarea al doilea caz - o succesiune de octeti (de 8 biti).
pe ecran. Exista, totusi un marcaj care impune ca textul Care sunt radacinile ierarhiilor de clase pentru fluxuri de
sa fie asezat pe ecran asa cum este el in pagina HTML. caractere?
Acest marcaj este <PRE> text preformatat </PRE>. clasele abstracte Reader si Writer.
Cum se reprezinta, intr-o legatura HTML, o referinta Care sunt radacinile ierarhiilor de clase pentru fluxuri de
absoluta la alta pagina de pe acelasi calculator? octeti?
cale/document , unde cale (engleza: path) este clasele abstracte InputStream si OutputStream.
succesiunea de directoare parcurse de la radacina Ce sunt fluxurile de prelucrare?
arborelui de directoare, pana la directorul in care se clase care efectueaza unele operatii de transformare a
gaseste fisierul care contine documentul; pentru datelor de pe flux(Processing Streams).
separarea directoarelor se foloseste bara (slash, /), La ce serveste marcajul APPLET si ce contine el?
conform conventiei din sistemul de operare Unix. Pentru a introduce intr-un document HTML o referinta la
Cum se reprezinta, intr-o legatura HTML, o referinta un applet, se foloseste marcajul (tagul) APPLET, care
relativa la alta pagina de pe acelasi calculator? are forma urmatoare:

16
 <APPLET CODE=fisier_class incarcat in memorie, deci inainte de prima invocare a
[CODEBASE=localizare] WIDTH=latime metodei start(); 
HIGHT=inaltime[ALIGN=aliniere]> * public void start() - metoda este invocata de catre
[<PARAM  NAME=numeVALUE=valoare>]*   browser atunci cand appletul trebuie sa isi inceapa
[text_de_inlocuire] </APPLET> executia, adica atunci cand este vizitata sau revizitata
Ce este un applet? pagina Web in care acesta este inclus; 
Applet-ul este un mic program cu interfata utilizator Ce este un fisier?
grafica, care nu poate rula in mod independent, ci este Fisierul (engleza: File) este o colectie de inregistrari
inglobat intr-o alta aplicatie. Pentru executarea unui situata, de regula, pe un suport extern si identificata
applet trebuie sa existe deci doua entitati: applet-ul printr-un nume.
propriu-zis si contextul in care acesta se executa Care sunt clasele folosite pentru citirea fisierelor?
(engleza: applet context). * Citirea fisierelor de octeti: clasa FileInputStream
Ce clase se folosesc pentru realizarea applet-urilor? * Citirea fisierelor de caractere: Clasa FileReader
Orice applet este realizat ca o clasa, derivata din clasa  Care sunt clasele folosite pentru scrierea fisierelor?
Applet, existenta in pachetul java.applet, sau din clasa * Scrierea in fisiere de octeti: Clasa FileOutputStream
JApplet, care extinde clasa Applet si exista in pachetul * Scrierea in fisiere de caractere: Clasa FileWriter
javax.swing. Cum se deschide un fisier?
Din ce clasa este derivata clasa Applet? dar clasa Prin constructorii claselor pentru citirea fisierelor si
JApplet? scrierea fisierelor.???
Clasa Applet se gaseste in pachetul java.applet  si este o Cum se inchide un fisier?
subclasa a clasei  Panel din pachetul  java.awt. In Folosind metoda close().
consecinta, applet-ul este, de fapt, un caz special de Ce sunt fisierele cu acces direct?
container. Fisierele cu acces direct, numite si fisiere cu acces
Care sunt principalele metode ale unui applet si de catre aleatoriu (engl.: Random Access File), sunt fisiere la care
ce program sunt invocate ele? programatorul poate indica prin program locul (adresa)
init(), start(), stop() si destroy(). Aceste metode sunt din fisier de la care incepe operatia de citire sau de
apelate de catre browser in momentele importante ale scriere.
ciclului de viata al unui applet, respectiv in momentul Carei clase apartin fisierele cu acces direct?
incarcarii acestuia in memorie, in momentul inceperii sau RandomAccessFile
intreruperii executiei si inainte ca appletul sa fie distrus. Ce fel de operatii se pot face asupra unui fisier cu acces
La ce serveste metoda init() in cazul unui applet? direct?
Metoda init() este utilizata pentru a crea partea "statica" a De regula, astfel de fisiere pot fi utilizate atat
applet-ului: adaugarea de componente la applet, pentru citire, cat si pentru scriere.
inregistrarea ascultatorilor de evenimente etc. Ea este Ce este cursorul fisierului cu acces direct?
redefinita in marea majoritate a applet-urilor. Fisierul cu acces direct este privit aici ca un tablou de
Cand sunt invocate metodele start() si stop() ale unui octeti memorat intr-un sistem de fisiere (de regula in
applet? memoria externa). Exista un cursor al fisierului (numit in
Metodele start() si stop() se folosesc numai pentru engleza File Pointer), care se comporta ca un indice al
lansarea si oprirea proceselor dinamice (de exemplu acestui tablou.  Valoarea acestui indice (pozitia
animatie si/sau sunete) care nu trebuie sa continuie cand cursorului de fisier) poate fi "citita" cu metoda
appletul nu este vizibil pe ecran. getFilePointer() si  poate fi modificata cu metoda seek().
In ce scop se foloseste metoda destroy() a unui applet? Orice citire sau scriere se face incepand de la acest
Se foloseste in special pentru a distruge firele de executie cursor. La sfarsitul operatiei, cursorul se deplaseaza pe o
paralele care au fost create de catre applet, sau a elibera distanta corespunzatoare cu numarul de octeti care au
anumite resurse ocupate de acesta. fost cititi sau scrisi efectiv.
Cum este utilizat un appletviewer? Care sunt modurile in care poate fi deschis un fisier cu
Applet-uri poate fi vizionat si intr-un appletviewer, daca acces direct?
(din fereastra X-window sau MS-DOS) se da comanda:    Fisierul cu acces direct poate fi deschis in modul read
appletviewer fisierHTML (numai pentru citire), write (numai pentru scriere) sau
Ce efect au metodele init(), start() si stop() ale unui read/write. In ultimul caz, este posibil sa se efectueze atat
applet, asa cum sunt ele continute in clasa Applet? citiri , cat si scrieri.
* public void init() - metoda este invocata de catre Ce sunt fluxurile de prelucrare?
browser sau appletviewer atunci cand appletul este

17
Fluxurile de prelucrare se conecteaza la alte fluxuri de public void reset() throws IOException - daca fluxul
intrare/iesire pentru a face anumite transformari asupra a fost marcat, este readus la pozitia corespunzatoare
datelor din fluxul respectiv. ultimului marcaj; daca fluxul nu a fost marcat sau nu
Ce sunt fluxurile de date? suporta resetarea, se genereaza o exceptie de
In unele aplicatii se doreste sa se transmita intr-un flux intrare/iesire;
de iesire sau sa se receptioneze dintr-un flux de intrare Clasele InputStream si OutputStream sunt sau nu
date primitive (de tip boolean, char, byte, short, int, long, instantiabile?
float sau double) si siruri de caractere. Clasa java.io.FileInputStream permite citirea datelor din
Prin ce clase se realizeaza fluxurile de date? fisiere sub forma de fluxuri de octeti. Orice instanta a
java.io.DataOutputStream si java.io.DataInputStream. acestei clase este un flux de intrare, care are ca sursa un
Ce este un flux de obiecte? fisier. La crearea acestei instante se cauta si se deschide
Fluxurile de obiecte sunt fluxuri de prelucrare care fisierul indicat ca argument al constructorului.
permit sa se transmita obiecte. In acest scop, obiectele Ce clasa se foloseste pentru a scrie date intr-un fisier de
transmise trebuie sa fie serializate, adica puse la sursa, caractere?
inainte de a fi transmise, sub forma unei serii de octeti, Scrierea intr-un fisier de text se poate face, de asemenea,
intr-un format care sa permita la destinatie reconstituirea folosind clasa FileWriter. Instantele acestei clase sunt
in memorie a obiectului respectiv. Astfel de obiecte se fluxuri de caractere de iesire, prin care se face scrierea
numesc serializabile. intr-un fisier.
Prin ce clase se realizeaza fluxurile de obiecte? Ce clasa se foloseste pentru a citi date dintr-un fisier de
java.io.ObjectOutputStream si caractere?
java.io.ObjectInputStream. Citirea unui fisier de text se poate face nu numai folosind
Ce reprezinta interfata Serializable? o instanta a clasei FileInputStream, ci si o instanta a
Orice obiect care se transmite pe un flux trebuie sa clasei FileReader. Deosebirea este ca aceasta ultima
apartina unei clase care implementeaza interfata clasa creaza un flux de caractere, in loc de un flux de
java.io.Serializable. octeti. Chiar daca fisierul nu este codificat in Unicode, ci
Cum este folosita interfata Serializable? in alt cod de caractere (de cele mai multe ori ASCII), se
Interfata Serializable nu contine campuri sau metode. face automat conversia in Unicode.
Clauza implements Serializable constituie doar o Prin ce metode se scriu datele primitive intr-un fisier cu
indicatie pentru compilatorul Java sa o puna sub forma acces direct?
serializabila. * public final void writeByte(byte v) throws IOException
De ce fluxul este un obiect abstract? - scrie o valoare de tip byte;
Fluxul este un concept situat pe un nivel inalt de * public final void writeShort(short v) throws
abstractizare, fiind privit ca o simpla succesiune de octeti IOException - scrie un short (pe doi octeti);
sau de caractere care se transmite intre sursa si destinatie. * public final void writeChar(char v) throws
Nu prezinta importanta nici natura sursei sau a IOException - scrie un caracter Unicode (pe doi octeti);
destinatiei, nici modul in care trebuie interpretata * public final void writeInt(int v) throws IOException -
secventa de octeti sau de caractere respectiva.  scrie un int (pe patru octeti);
Clasele Reader si Writer sunt abstracte sau instantiabile? Prin ce metode se citesc datele primitive dintr-un fisier
Clasa abstracta java.io.Reader este radacina ierarhiei de cu acces direct?
clase de fluxuri de intrare organizate pe caractere. Clasa * public final boolean readBoolean() throws
abstracta java.io.Writer este radacina ierarhiei de clase IOException - citeste o valoare booleana (un octet);
pentru fluxuri de caractere de iesire. * public final byte readByte() throws IOException -
Ce se intelege prin marcarea unui flux si prin ce metoda citesete o valoare primitiva de tip byte;
se realizeaza? * public final int readUnsignedByte() throws
public void mark(int readAheadLimit) throws IOException - citeste un singur octet, pe care il
IOException - marcheaza pozitia curenta in fluxul de interpreteaza ca numar intreg fara semn (in intervalul 0 ..
intrare, pentru a se putea reveni la ea ulterior; argumentul 255);
readAheadLimit indica numarul de caractere/octeti care * public final short readShort() throws IOException -
vor putea fi ulterior citite din flux,fara ca acest  marcaj sa citeste un intreg scurt (pe doi octeti);
se piarda; exceptia de intrare/iesire apare daca fluxul nu * public final int readUnsignedShort() throws
suporta marcarea sau daca se produce alta eroare de IOException - citeste doi octeti, pe care ii interpreteaza
intrare/iesire; ca un numar intreg scurt fara semn;
Cum se poate reveni intr-un flux la marcajul facut Pot fi fluxurile de date conectate direct la un fisier?
anterior?

18
Instantele acestor clase nu sunt fluxuri de intrare/iesire, public void run() - contine programul care trebuie
ci fluxuri de prelucrare. In consecinta, ele nu se executat de firul respectiv; Asa cum este ea in clasa
conecteaza direct la sursa sau la destinatie, ci la alte Thread, metoda nu face nimic (are corpul vid).
fluxuri. Astfel, iesirea unui DataOutputStream se poate In ce mod este invocata metoda run() a clasei Thread?
conecta la intrarea unui FileOutputStream, La programarea unui fir de executie, principala atentie se
ByteArrayOutputStream sau PipedOutputStream. Se acorda metodei run(), deoarece ea contine programul
poate conecta, de asemenea la intrarea unui propriu-zis care trebuie executat de acest fir. Totusi,
BufferedOutputStream care, la randul lui, este conectat la metoda run()nu este invocata explicit. Ea este invocata
oricare din cele trei mentionate anterior. In mod similar, de masina virtuala Java, atunci cand firul respectiv este
intrarea unui DataInputStream poate fi conectata la pus in mod efectiv in executie.
iesirea unui FileInputStream, ByteArrayInputStream sau Ce este interfata Runnable si la ce foloseste?
PipedInputStream. Pentru redefinirea metodei Run este necesar sa creem o
Ce se intampla daca se incearca introducerea intr-un flux subclasa a clasei Thread sau sa creem o clasa cu interfata
de obiecte a unui obiect neserializabil? Cand se constata Runnable, si sa dam o instanta a acestei clase ca
anomalia: la compilare sau la executie? argument constructorului clasei Thread.
Daca, la transmiterea obiectelor pe flux, se constata ca In ce stare se gaseste firul de executie imediat dupa ce el
unul din acestea nu este serializabil, se genereaza a fost creat?
exceptia NotSerializableException. Dupa ce firul de executie a fost creat (de exemplu prin
Ce este un proces (in general)? expresia new Thread()), el exista in memorie, dar inca nu
In general, se numeste proces o succesiune de poate fi executat. Se gasaeste, deci,in starea "nou creat"
transformari sau de operatii care conduce la realizarea (engleza: born). Pentru a-l face gata de executie, pentru
unui anumit rezultat. firul respectiv este invocata metoda start().
Cum se defineste procesul in informatica? In ce clasa exista metodele wait(), notify() si notifyAll()
In informatica, procesul este un program in executie. si la ce folosesc ele?
Ce se intelege prin multitasking? Aceste trei metode exista in clasa Object si servesc la
Majoritatea sistemelor de operare ale calculatoarelor sincronizarea firelor de executie.Un proces poate fi pus,
moderne permit executarea in acelasi timp a mai multor de asemenea, in asteptare prin invocarea metodei wait().
programe, deci permit concurenta proceselor la nivel de In acest caz, firul asteaptaconfirmarea efectuarii unei
program (de aplicatie). De exemplu, in timp ce editam un anumite actiuni, prin invocarea metodei notify() sau
text, putem tipari alt text la imprimanta, putem astepta notifyAll().
sosirea de pe retea a unei pagini de Web etc. Ce metode contine interfata Runnable?
Ce sunt firele de executie? Singura metoda a acestei interfete este public void run()
Firul de executie (in engleza: Thread) este, in esenta, un care are acelasi rol cu cea din clasa Thread.
subproces strict secvential. Cum se creeaza un fir de executie folosind un obiect cu
Ce se intelege prin multithreading? interfata Runnable?
In limbajul Java, exista posibilitatea de a se crea public Thread(Runnable target) - creaza un nou
programe care contin mai multe fire de executie. Aceasta fir de executie, care contine obiectul target cu interfata
inseamna ca, la executarea lor, se vor crea mai multe Runnable, iar numele firului este cel implicit;
subprocese care se vor desfasura simultan, folosind public Thread(Runnable target, String name) -
acelasi procesor si aceeasi zona de memorie. creaza un nou fir de executie, care contine obiectul target
In ce moduri se poate programa o clasa de fire de cu interfata Runnable si are numele name.
executie? Ce fire de executie exista obligatoriu in timpul
Exista doua moduri de a programa un fir de executie: functionarii masinii virtuale Java?
- prin extinderea clasei Thread; Chiar si in cazul programelor Java in care nu sunt
- prin implementarea interfetei prevazute explicit mai multe fire de executie, in timpul
Runnable. executarii lor coexista cel putin doua astfel de fire:cel al
aplicatiei propriu-zise si cel al colectorului de reziduuri
Ce este clasa Thread? (garbage collector).
Clasa java.lang.Thread realizeaza un fir de executie. Ce este un demon?
Care sunt principalele metode ale clasei Thread? Demonul (engleza: daemon thread) este un fir de
Cele mai frecvent utilizate metode ale clasei Thread sunt executie de prioritate coborata, care nu este invocat in
run(), start() si sleep(). mod explicit. El sta "adormit" si intra automat in executie
La ce serveste metoda run() a clasei Thread? atunci cand sunt indeplinite anumite conditii.

19
In ce stare trece firul de executie dupa invocarea metodei In limbajul Java, sincronizarea firelor de executie se face
start()? prin intermediul monitoarelor.
Dupa invocarea metodei start(), firul este executabil, dar In ce situatie firul de executie devine proprietarul unui
aceasta nu inseamna ca el este pus in executie imediat: monitor?
noul fir devine concurent cu cele deja existente (in Cand un fir incepe executarea uni metode sincronizate a
primul rand cu cel care l-a creat), si va fi pus in executie unui monitor, el devine "proprietarul" monitorului caruia
in mod efectiv (i se va acorda acces la procesor) atunci ii apartine aceasta metoda (engleza:owner).
cand ii vine randul, conform cu strategia de alocare a Ce se intampla in timpul cat un fir de executie este
resurselor adoptata. proprietarul unui monitor?
La ce serveste metoda sleep() si in ce stare trece firul de Pe toata durata cat un fir de executie este proprietarul
executie la invocarea ei? unui monitor, nici un alt fir nu poate invoca o metoda
Un fir in curs de executie poate fi oprit temporar sincronizata a monitorului respectiv.
("adormit") invocand metoda statica sleep(long millis). Cum se realizeaza sincronizarea intre un fir de executie
Prin ce metoda se modifica prioritatea unui fir de producator si unul consumator?
executie? Consideram ca un fir de executie "produce" anumite
metoda setPriority(int newPriority) date, pe care le "consuma" alt fir.
Care este prioritatea implicita a unui fir de executie? La ce serveste variabila de conditie a monitorului?
Fiecarui fir de executie i se asociaza o anumita Variabila booleana, numita variabila de conditie a
prioritate. Aceasta este un numar intreg, cuprins intre monitorului indica daca sunt disponibile date noi, puse
valorile Thread.MIN_PRIORITY si de producator si neutilizate de consumator.
Thread.MAX_PRIORITY (avand valorile 1 si respectiv In ce fel de metode se pot invoca metodele wait(),
Daca metoda setPriority(int newPriority) nu este notify() si notifyAll()?
invocata explicit, firului i se da prioritatea implicita Metode sincronizate ale monitorului.
Thread.NORM_PRIORITY, respectiv 5. Care este efectul invocarii metodei notifyAll()?
In ce stare trece firul de executie in timpul executarii Are ca efect trecerea firului de executie din starea
unei operatii de intrare/iesire? Waiting in starea Ready, astfel incat el poate fi activat de
Daca firul de executie solicita o operatie de intrare/iesire, catre dispecer in momentul in care procesorul sistemului
el ramane blocat pe intreaga durata a executarii operatiei devine disponibil. Deosebirea dintre ele este ca metoda
respective. notify() trece in starea Readyun singur fir de executie
In ce stare trece firul de executie dupa ce a invocat dintre cele care se gasesc in momentul respectiv in starea
metoda wait()? Waiting provocata de acest monitor(care din ele depinde
Un proces poate fi pus, de asemenea, in asteptare prin de implementare), in timp ce notifyAll() le trece in starea
invocarea metodei wait(). Ready pe toate.
In ce stare trece firul de executie dupa ce a expirat Ce sunt procesele paralele?
intervalul de "somn" dat prin metoda sleep()? Daca procesele de calcul care au loc simultan folosesc
Gata de executie (engleza: ready) - este starea in care resurse diferite (sunt executate de procesoare diferite,
firul poate fi pus in executie; folosesc zone de memorie interna si externa diferite etc.),
In ce stare trece un fir de executie blocat dupa ce s-a el se numesc procese paralele.
incheiat operatia de intrare/iesire solicitata? Ce sunt procesele concurente?
Gata de executie (engleza: ready) - este starea in care Daca procesele care se desfasoara in acelasi interval de
firul poate fi pus in executie. timp folosesc anumite resurse comune, ele se numesc
Cand se incheie executarea unui fir de executie si in ce procese concurente.
stare trece el in acest caz? In ce situatii si cum se iau in consideratie prioritatile
mort (engleza: dead) - este starea in care intra firul proceselor?
de executie dupa ce s-a incheiat executarea metodei Se acorda fiecaruia dintre procesele concurente un
run(). anumit nivel de prioritate. Daca mai multe procese
De ce este necesara sincronizarea firelor de executie? solicita simultan aceeasi resursa, ea este alocata
Exista situatii,in care este necesar sa se stabileasca procesului cu prioritate superioara. Conform acestei
anumite interdependente intre fire. Aceasta se intampla, strategii, daca, in timpul derularii unui proces A,
in special, atunci cand un fir trebuie sa foloseasca datele procesorul este solicitat de un alt proces B de prioritate
produse de alt fir: este evident ca nu le poate folosi superioara, procesul A este intrerupt, trecandu-se la
inainte ca ele sa fie produse. executarea procesului B. Dupa incheierea executarii
Cum se sincronizeaza firele de executie in Java? procesului prioritar B, se revine la procesul A, care este
continuat din starea in care a fost intrerupt.

20
Ce se intelege prin partajarea timpului?
Timpul total de functionare a procesorului este portionat
sau divizat (impartit in intervale de durate egale sau
diferite), acordandu-se succesiv cate un astfel de interval
de timp fiecaruia dintre procesele concurente.La
expirarea intervalului de timp alocat,numit si felie sau
transa de timp(engleza:time slice), procesul in curs este
intrerupt si se trece la executarea procesului urmator,
prin rotatie.

21

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