wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

js_12

Total questions: 134

Worksheet time: 2hrs 41mins

Name
Class
Date
1.

Declaratia unei variabile de instanta in Java presupune specificarea

a)

tipului

b)

argumentelor parametrizabile

c)

numelui

d)

(optional) a unei valori de initializare default

e)

caracterului primitiv sau non-primitiv

2.

La ce se refera latura "sociala" a obiectelor in contextul interactiunilor dintre acestea

a)

manifestari specifice obiectelor complexe (sau compuse)

b)

reprezentarea contextuala a obiectelor

c)

responsabilizarea functionala a obiectelor

d)

comportamente individualizate

3.

Date fiind urmatoarele metode statice (simpla): static void testCommands(String str){ try { processComands(str); System.out.println("Successfully processed: "+ str); } catch (Exception ex) { if (ex.getClass().equals(ProcessComandException.class)) System.out.println("test Exceptions: " + ex.getMessage()); else throw ex; } } static void processComands(String str) { if (str == null || str.length() == 0) throw new RuntimeException("Command empty!"); if (str.startsWith("ssh")) throw new ProcessComandException("Unkown command!") } si, de asemenea, clasa: class ProcessComandException extends RuntimeException{ public ProcessComandException(String mesaj){ super("ProcessComandException: " + mesaj); } } Ce s-ar putea obtine in urma executiei metodei test-mail?

a)

Successfully processed: ssh user@dns

b)

test Exceptons: ProcessComandException: Unkown command!

c)

Eroare compilare: lipseste blocul try-catch pentru operatia testCommands

d)

java.lang.RuntimeException: Command empty!

e)

ProcessComandException: Command empty!

4.

Instantele clasei Exception (sau ale subclaselor sale):

a)

pot fi returnate prin instructiunea return

b)

pot fi aruncate prin instructiunea throw

c)

nu trebuie tratate local, chiar daca nu sunt declarate in semnatura (definitia) metodelor din care sunt "aruncate"

d)

trebuie declarate in semnatura (definitia) metodelor din care sunt "aruncate", daca nu sunt tratate local

5.

In programarea OO ascunderea informatiei se refera la:

a)

protejarea detaliilor structurale (informationale) ale obiectelor

b)

gestionarea vizibilitatii atributelor sau variabilor de instanta

c)

vizibilitatea operatiilor sau metodelor de implementare

d)

"incapsularea comportamentala" a obiectelor

6.

Fiind data urmatoarea secventa de cod: Integer a = 7; Double b = 7.0; Integer c = 2; Number r1 = a/c; Number r2 = b/c; Number r3 = a + c; Number r4 = b + c;

a)

r3 va fi de tip double

b)

r3 va fi de tip int

c)

r1 va fi avea valoarea Integer 3

d)

r3 va fi de timp Integer

e)

r3 va fi de tip Double / f : r1 va fi avea valoarea Double 3.5

7.

Data fiind clasa Cerinta cu urmatoarea structura: Cerinta __________________________ -idCerinta: long [1] -denumire: String[1] -descriere: String[1] (considerati generate metodele get/set pentru fiecare proprietate si, de asemenea, toti constructorii necesari). Pentru ca procesarea urmatoare sa fie valida, care dintre afirmatii trebuie sa fie adevarata? public static void main(String[] args) { // Cerinta c1 = new Cerinta(1); c1.setDenumire("Model UIX"); c1.descriere = "Design Model Frontend"; System.out.println("c1.descriere: " + c1.getDescriere()); }

a)

Atributul denumire poate avea vizibilitatea private sau protected, daca este modificabil prin setter

b)

Daca atributul descriere este protected , clasa de test si clasa Cerinta trebuie sa se gaseasca in acelasi pachet

c)

Daca atributul descriere este declarata private , clasa de test si clasa Cerinta trebuie sa se gaseasca in acelasi pachet

d)

Atributele denumire si descriere nu pot fi in acelasi timp private

e)

Pentru ca atributul denumire sa poata fi modificat printr-o operatie setter, atunci el trebuie declarat public/f Atributul id trebuie declarat public pentru ca sa poata fi invocat din constructorul Cerinta(Integer id)

8.

In cazul interfetelor, spre deosebire de clase:

a)

nu este permisa nici o alta declaratie cu exceptia operatiilor

b)

cu exceptia operatiilor, mai sunt permise declaratiile de constante

c)

este posibila chiar si mostenirea multipla

d)

nu este permisa mostenirea sub nici o forma

9.

Prin specializare, subclasele:

a)

Pot supraincarca (redefine) atributele (variabilele de instanta) mostenite

b)

Au access neconditionat la variabilele de instanta din superclase

c)

Pot rescrie (redefine) atributele (variabilele de instanta) mostenite

d)

Au acces la variabilele de instanta din superclase declarate public sau protected

e)

Mostenesc (preiau) in structura lor toate variabilele de instanta declarate in super-clase

10.

Colectie de tip TreeSet

a)

Sunt conforme cu interfata Collection, dar pastreaza elementele ordonate dupa principiul codificat prin intermediul metodei

b)

Permit adaugarea referintei unui obiect de mai multe ori

c)

Sunt conforme cu interfata Map

d)

Nu permit duplicarea elementelor

11.

Data fiind urmatorul model cu clasa Membru: Membru ______________________ + idMembru: long[1] + numePrenume: String[1] + rol: String[1] (considerati generate metodele get/set pentru fiecare proprietate si, de asemenea, totitoti constructorii necesari)

Care ar fi natura procesarii si ce rezultatul final s-ar putea obtine din urmatorul test?

public static void main(String[] args) { // Instantiere model Membru[] membrii = { new Membru(1, "Developer 1"), new Membru(2, "Developer 2"), new Membru(3, "Developer 3"), new Membru(4, "Developer 4"), new Membru(5, "Developer 5") }; Map mapMembri = new HashMap(); Stream streamMembri = Arrays.stream(membri); streamMembri.forEach(m -> mapPembri.put(m.getIdMembru(), m)); // Procesare Model Membru m = mapMembri.get(4); System.out.println(m.getNumePrenume()); }

a)

Rezultatul final corect ar fi: Developer 5/ b. Procesarea are in vedere cautarea in tabela de asocieri a membrului de pe pozitia 4 (al cincilea in ordinea instantierii)

b)

Rezultatul final corect ar fi: 4

c)

Procesarea are in vederea cautarea in tabela de asocieri a cheii cu valoarea 4

d)

Procesarea are in vederea cautarea in tabela de asocieri a membrului cu id-ul 4

e)

Rezultatul final corect ar fi: Developer 4

12.

Interfetele clasei Exception sunt generate pentru:

a)

afisarea la consola a unor mesaje catre utilizatori care parametri ai operatiei println() din System.out;

b)

pot intrerupe executia unei metode si afisa mesaje la consola prin operatia printStackTrace();

c)

pot genera erori de compilare daca nu sunt preluate in structuri de tip catch();

d)

pot genera erori de compilare daca nu sunt preluate in structuri de tip switch();

13.

Prin operatiile definite la nivelul obiectelor sunt abstractizate elemente legate de :

a)

referentierea obiectelor;

b)

structura informationala a obiectelor;

c)

responsabilitati comportamentale ale obiectelor;

d)

starea obiectelor;

14.

Tipul fundamental int din limbajul Java:

a)

este considerat un tip de acoperire pentru tipul primitiv Integer;

b)

este considerat un tip primitv;

c)

reprezinta valori numerice intregi pe 32 de biti;

d)

reprezinta valori numerice intregi pe 4 bytes;

15.

Clasa StringBuilder este utila pentru:

a)

reprezentarea optimizarea procesarii adunarii sirurilor de valori numerice;

b)

modificarea structurii sirurilor de caractere imutabile;

c)

reprezentarea sirurilor de caractere;

d)

reprezentarea optimizarea procesarii concatenarilor de siruri de caractere;

16.

Prin atributele definite la nivelul obiectelor sunt abstractizate elemente legate de :

a)

referentierea obiectelor ;

b)

starea obiectelor;

c)

structura informationala a obiectelor;

d)

responsabilitati comportamentale ale obiectelor;

17.

Comportamentul obiectelor ( operatiile declarate ) implementat intr-o clasa specifica poate fi abstractizat:

a)

prin mai multe clase parinte ce vor fi extinde clasa initiala;

b)

printr-o interfata care va prelua doar operatiile relevante si declarate cu specificatorul public;

c)

prin mai multe clase parinte ce vor transforma clasa initiala intr-o clasa compusa (agregat);

d)

prin segregarea in mai multe interfete ce vor fi implementate de clasa initiala;

18.

Prin declararea de membri interni campuri ( sau variabile de instante) ce pot fi initializate cu referinte catre instante din alte clase:

a)

se poate aplica principiul reutilizabilitatii prin compunere;

b)

se poate aplica principiul reutilizabilitatii prin specializare;

c)

se poate aplica principiul reutilizabilitatii prin generalizare;

d)

se poate aplica principiul reutilizabilitatii prin generalizare;

e)

se poate aplica principiul reutilizabilitatii prin agregare;

19.

Aplicarea principiului reutilizabilitatii prin extindere in subclase implica:

a)

mostenirea membrilor atribute sau variabile de instanta;

b)

mostenirea metodelor constructori apelabile prin this();

c)

mostenirea metodelor constructori apelabile prin super();

d)

mostenirea tuturor metodelor cu exceptia constructorilor;

20.

Specificatorul protected implementeaza principiul ascunderii informatiei prin

a)

restrictionarea accesului din clasele din pachete externe la membri interni;

b)

limitarea accesului la membrii interni doar din contextul subclaselor si al claselor din acelasi spatiu de nume ( package );

c)

incapsularea completa a membrilor interni, inclusiv pentru subclase;

d)

permiterea accesului prin instructiunile de import;

21.

Data fiind urmatoarea ierarhie de mostenire: Public class Membru { Public void setCompetente(String competente) {…} } Public class LiderEchipa extends Membru{ Public void setCompetente(String competente) {…} Public void set Competente (String competente, TipCompetente tip) {…} } Public class ManagerProiect extends Membru { } Care din urmatoarele afirmatii sunt adevarate:

a)

Clasa LiderEchipa va prezenta 2 metode cu numele setCompetente, metoda mostenita fiind supraincarcata local;

b)

Clasa Membru va prezenta 3 metode cu numele setCompetente: doua mostenite si una declarata local;

c)

Clasa ManagerProiect va prezenta doar o singura metoda cu numele setCompetente;

d)

Clasa LiderEchipa va prezenta 3 metode cu numele setCompetente: doua declarate local si una mostenita;

e)

Clasa ManagerProiect va prezenta 3 metode cu numele setCompetente: doua mostenite din clasa LiderEchipa si una mostenita din clasa Membru;

22.

Clasa utilitara java.util.Optional:

a)

poate instantiata pentru a obtine un obiect optional prin operatia ofNullable(), de ex. Optional.ofNullable(“ Java17”);

b)

trebuie instantiata direct pentru a obtine un obiect optional, de ex.: new Optional (“ string optional”);

c)

prezinta operatia orElseGet() care necesita un argument de tip Consumer ce poate fi furnizat printr-o expresie Lambda;

d)

este parametrizata generic Optional ;

e)

prezinta operatia orElseGet() care necesita un argument de tip Supplier ce poate fi furnizat prinntr-o expresie Lambda;

23.

Regulile sintactice privind formalizarea epresiilor lambda implica:

a)

declararea obligatorie a tipului parametrilor;

b)

folosirea operatorului ->;

c)

folosirea obligatorie a parantezelor {} pentru marcarea instructiunilor de implementare;

d)

. folosirea cuvantului cheie new;

e)

. folosirea obligatorie a parantezelor () pentru marcarea parametrilor, indiferent daca acestia exista sau nu;

24.

Conformarea unui obiect cu un complex de tipuri (polimorfism) poate fi rezultatul:

a)

instantierii dintr-o clasa ce implementeaza o interfata ce mosteneste (extinde prin mostenire) un set de interfete distincte;

b)

instantierii dintr-o clasa abstracta facand parte dintr-o ierarhie de mostenire;

c)

instantierii dintr-o clasa ce implementeaza un set de interfete distincte;

d)

. instantierii dintr-o clasa concreta facand parte dintr-o ierarhie de mostenire;

e)

instantierii din clasa radacina a unei ierarhie de mostenire;

25.

Prin declararea unei variabile-tip in specificatia unei metode, de exemple: Public static F[] sortareSerie(F[] tablouSerie){…} se poate obtine:

a)

Specificarea generica a unui set de comportamente asociate;

b)

Parametrizarea tipului argumentelor al metodei concrete;

c)

Parametrizarea tipului returnat al metodei concrete;

d)

Parametrizarea specificatorului de vizibilitate al metodei concrete;

e)

Parametrizarea tipului unor variabile locale ale metodei concrete;

26.

Parametrizarea generica, in contextul limbajului Java, poate fi utila pentru:

a)

tipizarea comparabilitatii prin metoda equals() sprascrisa relativ la clasa Object, de ex: public boolean equals(T other){…}

b)

tipizarea explicita a instantelor comparabile prin instanta Comparable, de ex: Comparable;

c)

tipizarea interfetelor implementate printr-o clasa concreta, de ex: public class SerieNumerica implements T{};

d)

tipizarea explicita a elementelor colectiilor standard, de ex: List;

27.

Operatia boolean removeAll(Collection c) este reprezinta in Java Collection API:

a)

doar in implementarea ArrayList ;

b)

numai in implementarea TreeSet;

c)

doar in interfata List;

d)

in interfata Collection si prin urmare mostenita/implementata in toate sub-interfetele si clasele din API;

e)

doar in interfata Set;

28.

Operatia boolean retainAll(Collection c) din Interfata Collection poate fi utila in urmatoarele operatii cu colectii:

a)

diferenta;

b)

cautare;

c)

intersectie;

d)

diviziune;

e)

reuniune;

29.

Urmatoarea secventa de cod Java: List listMembri =… List listRezultat = listMembri.stream().sorted(m1, >m1.getIdMembru().compareTo(m2.getIdMembru())).collect(Collectors.toList()); (presupunem variabilia listMembri initializata correct)

a)

Nu returneaza nimic,doar reface prin reordonare lista initiala

b)

Filtreaza stream-ul ordonat dupa idMembru

c)

Ordoneaza streamul initial folosind o expresie lambda Comparator ce implica proprietatea idMembru a instantelor Membru

d)

Returneaza o lista noua sortata

e)

Returneaza un nou stream ca rezultat al ordonarii

30.

Fiind data urmatoarea secventa de cod: String str_1 =”pro”; String str_2 =”pro”; String str_3 =new String(”pro”); Care dintre urmatoarele expresii vor fi evaluate true:

a)

Str_1 !=str_2

b)

Stre_1 == str_3

c)

Str_3 equals(str_1)

d)

Str_1 equals(str_2)

e)

Str_2 equals(str_1)

31.

Pentru a obtine o lista de instante ale entitatii Produs prin urmatoarea interogare String queryString=”SELECT p FROM Produs p WHERE p um=p_um”. Ar putea fi executata ur,matoarea secventa de cod

a)

Listproduse=em.createNamedQuery(queryString)setParameter(“p_um”,”kg”) getResultList

b)

Listproduse=em.createNeativeQuery(queryString, Produs, class)setParameter(“p_um,”kg”) getResultList()

c)

Listproduse=em.createQuery(queryString,Produs, class), getResultList

d)

. Listproduse=em.createQuery(queryString, Produs, class), setParameter(“p_um”,”kg”).getResultList();

32.

Operatia collect(collectors.toList()) din cadrul Java Stream API

a)

Este o actiune terminala de creare a unei colectii din elementul Stream

b)

Este conditionata de procesarea anterioara a unei operatii de filtrare Stream filter(Predicate)

c)

Este o actiune de initializare a unui Stream de obiecte dintr-o lista data

d)

Produce/ returneaza o colectie de tip Java.util.List

e)

Este specifica clasei utilitare Stream Bullder

33.

Care din urmatoarele concepte sunt determinate in paradigma OO;

a)

index/SQL

b)

clasa

c)

instanta

d)

tabela

e)

polimorfism

34.

Entitatile( din cadrul unui model DDD)sunt obiecte din domeniul afacerii caracterizate prin

a)

o interfata de sine-statatoare

b)

identitate care asigura un flux e continuitate temporala

c)

Operatii de conectare si access la structurile de persistenta

d)

Metode factory de initializare( altele decat constructorul)

35.

In contextul bibliotecii standard a limbajului standard a limbajului/ platformei Java, operatia compareTo(altObiect)

a)

urmeaza o valoare int daca provine din implementarea interfetei Comparable

b)

este suprascrisa de la nivelul clasei Object

c)

este definita in clasa Comparable

d)

este mostenita din clasa Comparable

36.

Operatia forEach() din cadrul API-ului java.util.stream.Stream

a)

returneaza un nou stream cu elementele ramase filtrate

b)

are drept scop procesarea fiecarui element din stream

c)

are drept scop filtrarea elementelor din stream

d)

nu returneaza nimic, finalizeaza procesarea stream-ului

37.

Pentru a obtine o lista de instante ale entitatii Comanda prin urmatoarea interogare string queryString=”SELECT c FROM C omanda c WHERE c valoareaTotala> :p_valoare_totala”; ar putea fi executata urmatoarea secevnta de cod:

a)

List comenzi=em.createQuery(queryString, Comanda.class).getResultList();

b)

List comenzi=em.createNamedQuery(queryString, Comanda class). setParameter(“p_valoare_comanda”, 1350).getResultList();

c)

List comenzi=em.createQuery(queryString, Comanda.class).setParameter(“p_valoare_comanda”, 1350).getResultList();

d)

List comenzi=em.createNativeQuery(queryString, Comanda.class).setParameter(“p_valoare_comanda”,1350).getResultList();

38.

Instantierea claselor abstracte:

a)

Se poate realiza doar prin metode abstracte

b)

Se poate realiza in mod indirect prin intermediul subclaselor concrete

c)

Se poate realiza in mod direct

d)

Nu se poate realiza pentru ca acestea nu prezinta constructori propria

39.

In cadrul aplicatiilor orientate obiect, reutilizabilitatea obiectelor prin compunere

a)

Presupune pastrarea in variabile de instanta a referintelor obiectelor componente din cadrul obiectelor aggregate

b)

Presupune pastrarea in variabile locale (variabile ale metodelor de implementare) a referintelor obiectelor componente din cadrul obiectelor composite

c)

Presupune derivarea prin specializare a obiectelor aggregate in obiecte categorii-componente

d)

Presupune agregarea prin generalizare a obiectelor componente in super-obiecte composite

40.

Subtipizarea apare drept consecinta:

a)

Agregarea obiectelor componente in obiecte composite

b)

Derivarea subclaselor din clase abtracte

c)

Reutilizarea prin compunere

d)

Reutilizarea prin specializare

41.

Prin specializare, subclasele:

a)

Pot supraincarca(redefine) atributele (variabilele de instanta) mostenite

b)

Au access neconditionat la variabilele de instanta din superclase

c)

Pot rescrie(redefine) atributele (variabilele de instanta) mostenite

d)

Au acces la variabilele de instanta din superclase declarate public sau protected

e)

Mostenesc(preiau) in structura lor toate variabilele de instanta declarate in super-clase

42.

Colectiile de tip LinkedList

a)

Permit adaugarea referintei unui obiect de mai multe or

b)

Sunt conforme cu interfata List, si pastreaza elementele dupa principiul listelor inlantuite

c)

Sunt conforme cu interfata Collection

d)

Nu permit duplicarea elementelor

43.

Operatia Stream filter(Predicate):

a)

este o operatiune intermediara

b)

se refera la conversia elementelor initiale in instante de alt tip

c)

se refera la crearea unui nou stream continand doar elemente selectabile printr-un predicat lambda

d)

este o operatie finala

44.

44. Fiind dat urmatorul model:

(Clasa Cerinta are subclasele CerintaFunctionala si CerintaTehnica. Considerati generate metodele get/set pentru fiecare proprietate si, de asemenea, toti constructorii necesari ) Si avand in vedere urmatorul test de persistenta:

Care din urmatoarele enunturi sunt adevarate?

a)

Rezultatul procesarii ar putea fi echivalent cu: em.createQuery(„SELECT c FROM Cerinta c”, Cerinta.class).getResultStream() .filter(c -> !c.getIdCerinta().equals(1)) .forEach(c -> Syste.out.println(c.getDenumire()));

b)

Executia va genera o exceptie de sintaxa, fraza JPQL corespunzatoare ar fi: SELECT * FROM Cerinta c

c)

Executia ar fi echivalenta si cu fraza: em.createNativeQuery(„SELECT c.denumire FROM Cerinta c”, Cerinta.class).getResultatList();

d)

Rezultatul procesarii ar fi (indiferent de strategia de mapare a ierarhiei de mostenire): Configurare suport persistenta Story: Preluare date proiecte

e)

Rezultatul procesarii ar putea genera valori doar daca strategia de mapare a ierarhiei Cerinta ar fi specificata prin @Inheritance(strategy=InheritanceType.SINGLE_TABLE)

45.

Care ar fi natura procesarii si ce rezultat final s-ar putea obtine din testul urmator?

a)

Rezultatul final va afișa obiecte Membru instantiate din datele reconstituite din fișierul MembriQuiz dat

b)

Fiecare execuție va reface fișierul binar cu numele MembriQuiz in care vor fi salvate mai multe valori tip int si String

c)

Rezultatul final va afișa instantele Membru serializate in fișierul MembnQuiz.dat.

d)

Va fi generat (pe disc) un fișier text rezultat din serializarea valorilor Java fundamentale de tip int si String.

e)

Va fi obtinuta doar o eroare de compilare ca urmare a faptului ca blocul try principal din main nu este completat de o secțiune catch.

46.

Care din urmatoarele enunturi sunt adevarate, avand in vedere testul de mai jos?

a)

Functia reduce(0, (x,y) -: x + y) ar fi echivalenta cu count()

b)

Functia reduce(0, (x,y) -: x + y) ar fi echivalenta cu sum()

c)

Procesarea Stream ar putea fi echivalenta cu: SELECT COUNT(e) FROM echipe e WHERE e specializare <> ‘BACKEND’

d)

Procesarea Stream ar putea fi echivalenta cu: SELECT SUM(e membri size) FROM echipe e WHERE e.specializare =’BACKEND’

e)

Agregarea map/reduce ar putea fi inlocuita cu Collectors.collect(summingDouble(e -> e.getMembri().size()));

47.

gestionarea tranzactiilor in contextul JDBCeste atributul componentelor de tip (simplu)

a)

java.sql.DriverManager

b)

java.sql.ResultSet

c)

java.sql.Statement

d)

java.sql.ResulSetMetaData

e)

java.sql.Connection

48.

pentru a scrie mai multe caractere cu un stream java.io.Writer ar putea fi invocata de una din metodele (multiplu)

a)

void write(String string)

b)

voi write( char[] buffer)

c)

voi write( int c)

d)

void flush()

e)

Writer append(char c)

49.

parcurgerea(procesarea element cu element) colectiilor tipizate poate fi realizata astfel (multiplu)

a)

fara Iterator, dar cu ajutorul structurilor de tip while each

b)

fara Iterator, dar cu ajutorul structurilor de control de tip for each

c)

cu ajutorul obiectelor de tip Iterable

d)

cu ajutorul obiectelor de tip Iterator

e)

cu ajutorul structurilor de tip Stream.

50.

pentru a crea un nou director folosind clasa java.nio.file.Files ar putea fi folosita metoda (simplu)

a)

boolean exist(Path path, LinkOption...options)

b)

new Files(filePath)

c)

Path createFiles(Path filePath,FileAttribute...attrs)

d)

Path createDirectory(Path dir, FileAttribute...attrs)

e)

Path makeDirectory(Path dir,FileAttribute...attrs)

51.

o instanta de tip java.sql.ResultSet poate fi utilizata pentru ( multiplu)

a)

deschiderea unei conexiuni la baza de date

b)

actualizarea datelor de pe linia curenta, daca a fost initializat cu parametrul TYPE_SCROL_SENSITIVE

c)

extragerea si parcurgerea datelor rezultate dintr-o interogare executata printr-un

d)

extragerea directa a informatiilor din dictionar(metadalelor)cu privire la structura

e)

actualizarea datelor de pe linia curenta, daca a fost initializata cu parametrul CONCUR_UPDATABLE

52.

apelul collect() catre structurile de tip java.util.Stream (multiplu)

a)

este o operatie terminala: parcurge elementele si Stream fara a returna totusi o valoare finala(void)

b)

reprezinta o actiune intermediara: poate acumula elementele Stream-ului intr-o colectie daca primeste ca argument un collector prin metoda Collectors.toCollection()

c)

reprezinta o actiune intermediara: poate acumula elementele Stream-ului intr-o tabela asociativa Map daca primeste ca argument un collector prin metoda Coolectors.toMap()

d)

reprezinta o actiune terminala: poate genera o tabela sociativa Map daca primeste ca argument un collector prin metoda Collectors.groupingBy()

e)

reprezinta o actiune terminala: poate acumula elementele Stream-ului intr-o colectie daca primeste ca aurgument un collector prin metoda Collectors.toList()

53.

urmatoarea secventa de cod Java (multiplu) ListlistProiect=... listProiect.stream() .filter(p->m.getNrProiect().equals(7)) .map(p.getDescriere()) .forEach(->System.out.printin(p)) (presupunem variabila listProiecte initializata corect)

a)

listeaza in final proprietatea descriere a fiecarei instante Proiect din stream-ul initial

b)

listeaza elementele din stream ul initial dupa un Predicat ce implica proprietatea desciere

c)

listeaza in final proprietatea descriere a instantei Membru nrProiect 7

d)

mapeaza elementele din stream ul initial dupa o Functie ce implica proprietatea descriere

54.

Care dintre următoarele acțiuni fac parte din fluxul obișnuit specific procesării JDBC al comunicării cu o baza de date SQL: (multiplu)

a)

obținerea unei conexiuni la sursa de date relaționala externa după înregistrarea driver-ului proprietar;

b)

actualizarea datelor printr-un OutputStream

c)

extragerea datelor dintr-un ResultSet

d)

extragerea datelor dintr-un OutputStream;

e)

actualizarea datelor pnntr-un Statement;

55.

Valorile unei coloane de tip numeric dintr-o tabela relaționala pot fi accesate dintr-un java.sql.ResultSet folosind o operație getXXX(numeColoana) de tip: (multiplu)

a)

getDate();

b)

getSting();

c)

getByte();

d)

getBigDecimal();

e)

getDouble();

56.

Pentru accesarea unui singur octet ar trebuie invocată următoarea metodă din clasa java.io.lnputStream:

a)

int next():

b)

int available():

c)

int read(byte[] buffer).

d)

. int read()

e)

long skip(long I);

57.

. Operația forEach() specificata de interfața java.util.Stream

a)

primește ca argument un obiect de tip java.util.function.Consumer

b)

este o operație terminala: produce o colecție dupá selectarea dupa un criteriu dat a elementelor din Stream.

c)

primește ca argument un obiectt de tip java.util.function.Predicate

d)

. este o operatie intermediará produce un nou Stream după selectarea dupa un criteriu dat a elementelor din Stream-ul anterior

e)

este o operație terminala parcurge elementele din Stream fara a returna totuși o valoare finala (void).

58.

. în metodologia DDD, componentele de tip Repository sunt responsabile pentru:

a)

implementarea regulilor de calcul complexe sub forma procesării stării entităților

b)

crearea(instanțierea) structurilor compozite (agregate) de entități complexe;

c)

gestiunea entităților intr-un spațiu de persistență;

d)

asigurarea operațiilor de access-interogare-regăsire-restaurare a obiectelor entități;

e)

expunerea datelor din entitățile persistente in componentele-view din stratul de prezentare;

59.

Cadrul de lucru JPA va genera in procesul de mapare obiectual-relațional câte o tabelă distinctă asociată fiecărei clase dintr-o ierarhie de moștenire prin directiva:

a)

@lnheritance(strategy=lnheritanceType.SINGLE_TABLE)

b)

@lnheritance(strategy=lnheritanceTypeJOINED)

c)

@lnheritance(strategy=lnheritanceType.TABLE_PER_CLASS)

d)

@Embeddable

e)

@MappedSuperdass

60.

în metodologia DDD entitățile sunt caracterizate prin:

a)

proprietăți descrise cu ajutorul tipurilor value-objects;

b)

. identitate: proprietate reprezentând constanta ciclului ide viață;

c)

asociațiilor(referințelor) către alte componente entități din model;

d)

operații specificate în interfețe reprezentând definiții ale serviciilor domeniului;

e)

imutabilitate: starea entităților după instanțiere rămâne ne-modificabilâ pe parcursul ciclului ide viață;

61.

Cadrul de lucru JPA va genera in procesul de mapare obiectual-relațional o cheie străină în tabela SQL asociată unei clase-entități prin următoarea directivă:

a)

@ld

b)

@OneToOne

c)

@ManyToOne

d)

@ManyToMany

e)

@OneToMany

62.

Execuția unei interogări SELECT JP.QL poate produce ca rezultat

a)

un stream conținând instanțe ale unei clase entități

b)

. o colecție de instanțe ale unei clase-suport entity-view nemarcate drept @Entity

c)

o valoare numerică scalară rezultată de ex. dintr-o operație de agregare;

d)

o singură instanță tipizată printr-o clasă-entitate;

e)

o colecție de instanțe ale unei clase entități;

63.

. Rolul componentei java.sql.Connection din APl-ul JDBC se referă la

a)

extragerea datelor din baza de date prin componente java.sql ResultSet

b)

înregistrarea driver-ului JDBC pentru conectarea bazei de date:

c)

transmiterea spre execuție a frazelor SQL formalizate prin componente java.sql.Statement;

d)

pregătirea componentelor java.sql.ResultSet pentru transmiterea actualziatea in baza de date;

e)

pregătirea si efectuarea apelurilor procedurilor stocate in baza de date prin obiecte de tip java.sql.CallableStatement

64.

La nivel conceptual, un model obiectual are în vedere următoarele aspecte:

a)

stare obiectelor;

b)

atributele şi operaţiile descriptive;

c)

comportamentul obiectelor

d)

mecanismele de invocare-comunicare

65.

) Prin specializare, subclasele:

a)

moştenesc(preiau) în structura lor toate variabilele de instanţă declarate în super-clase

b)

au access necondiţionat la variabilele de instanţă din superclase;

c)

pot rescrie (redefini) atributele (variabilele de instanţă) moştenite

d)

pot supraîncărca (redefini) atributele (variabilele de instanţă) moştenite;

e)

au access la variabilele de instanţă din superclase declarate public sau protected

66.

Iniţializarea implicită a variabilelor de instanţă:

a)

se referă la valorile default generate în momentul instanţierii claselor

b)

se face diferenţiat funcţie de tipuri primitive şi referinţă;

c)

se face diferenţiat funcţie de tipul variabilelor: de instanţă sau de clasă;

d)

se face în acelaşi timp cu iniţializarea variabilelor locale din interiorul metodelor de implementare;

67.

Definitia unei operaţii aparţinând unei clase concrete în Java presupune specificarea:

a)

metodei de implementare;

b)

tipului returnat;

c)

vizibilităţii;

d)

multiplicităţii

e)

numelui;

68.

La fel ca şi clasele, interfeţele:

a)

descriu compartamentele obiectelor printr-un set de operaţii publice;

b)

descriu starea obiectelor printr-un set de constante;

c)

asociază operaţiilor şi metode de implementare specifice;

d)

descriu un set de obiecte ce vor manifesta comportamente similare;

69.

Fiind dată următoare secveţă de cod: String str_1 = "exemplu"; String str_2 = "exemplu"; String str_3 = new String("exemplu"); Care din următoarele expresii vor fi evaluate true:

a)

(str_1 == str_2)

b)

(str_1 == str_3)

c)

(str_2 != str_3)

d)

(str_2.equals(str_3)

70.

să se obţină următoarea listă de produse (în ordinea specificată): Produs id: 4, denumire: P_4, pret unitar: 1200.0 Produs id: 3, denumire: P_3, pret unitar: 300.0 Produs id: 2, denumire: P_2, pret unitar: 100.0 Produs id: 1, denumire: P_1, pret unitar: 50.0

a)

return p1.getPretUnitar().compareTo(p2.getPretUnitar());

b)

return p2.getPretUnitar().compareTo(p1.getPretUnitar());

c)

return-p2.getPretUnitar().compareTo(p1.getPretUnitar());

d)

return -p1.getPretUnitar().compareTo(p2.getPretUnitar());

71.

Colectiile de tip TreeSet:

a)

permit adaugarea referintei unui obiect de mai multe ori

b)

nu permit dublicarea elementelor;

c)

sunt conforme cu interfata Map;

d)

sunt conforme cu interfata Collection, dar pastreaza elementele ordonat dupa principiul codificat prin implementarea metodei compareTo().

72.

Urmatoarea secventa de cod Java: List listMembri = …; listMembri.stream() .filter(m -> m.getNumePrenume().equals(“N.P.”)) .map(m.getIdMembru()) .forEach(m -> System.out.println(m)); (prespunem variabila listMembri initializata corect)

a)

filtreaza elementele din streamul initial dupa un Predicat ce implica proprietatea idMembru;

b)

mapeaza elementele din streamul initial dupa o Functie ce implica proprietatea idMembru

c)

listeaza in final proprietatea numePrenume a fiecarei instante Membru din streamul initial;

d)

listeaza in final proprietatea numePrenume a instantei Membru cu IdMebru 4

73.

In cadrul JPA, in clasele entitati declarate @Entity ar putea fi introdusa si:

a)

adnotarea @SingleToMany pentru definirea asociatiilor 1-M cu alte entitati din model;

b)

adnotarea @OneToMany pentru definirea asociatiilor 1-M cu alte entitati din model;

c)

adnotarea @Id pentru definirea campului care va genera cheia primara a tabelei SQL de mapare;

d)

adnotarea @PrimaryKey pentru definirea campului care va genera cheia primara a tabelei SQL de mapare;

74.

Entitatile JPA pot fi incluse/atrase intr-un context de persistenta:

a)

in mod direct prin metoda cascade() a EntityManager-ului

b)

in mod direct prin metoda persist() a EntityManager-ului

c)

in mod indirect prin metoda persist() a clasei EntityManagerFactory

d)

in mod direct prin metoda merge() a EntityManager-ulu

75.

?

a)

a

b)

b

c)

c

d)

d

76.

?

a)

a

b)

b

c)

c

d)

d

77.

?

a)

a

b)

b

c)

c

d)

d

78.

?

a)

a

b)

b

c)

c

d)

d

79.

?

a)

a

b)

b

c)

c

d)

d

80.

?

a)

a

b)

b

c)

c

d)

d

81.

?

a)

a

b)

b

c)

c

d)

d

e)

e+f

82.

?

a)

a

b)

b

c)

c

d)

d

83.

?

a)

a

b)

b

c)

c

d)

d

84.

?

a)

a

b)

b

c)

c

d)

d

e)

e

85.

?

a)

a

b)

b

c)

c

d)

d

e)

e

86.

?

a)

a

b)

b

c)

c

d)

d

e)

e

87.

?

a)

a

b)

b

c)

c

d)

d

88.

?

a)

a

b)

b

c)

c

d)

d

e)

e

89.

?

a)

a

b)

b

c)

c

d)

d

90.

?

a)

a

b)

b

c)

c

d)

d

e)

e

91.

?

a)

a

b)

b

c)

c

d)

d

92.

?

a)

a

b)

b

c)

c

d)

d

e)

e

93.

?

a)

a

b)

b

c)

c

d)

d

94.

?

a)

a

b)

b

c)

c

d)

d

e)

e

95.

Operatia boolean retainAll(Collection c) din Interfata Collection poate fi utila in urmatoarele operatii cu colectii:

a)

diferenta;

b)

cautare;

c)

intersectie;

d)

diviziune;

e)

reuniune;

96.

Conformarea unui obiect cu un complex de tipuri (polimorfism) poate fi rezultatul:

a)

instantierii dintr-o clasa ce implementeaza o interfata ce mosteneste (extinde prin mostenire) un set de interfete distincte;

b)

instantierii dintr-o clasa abstracta facand parte dintr-o ierarhie de mostenire;

c)

instantierii dintr-o clasa ce implementeaza un set de interfete distincte;

d)

instantierii dintr-o clasa concreta facand parte dintr-o ierarhie de mostenire;

e)

instantierii din clasa radacina a unei ierarhie de mostenire;

97.

Clasa utilitara java.util.Optional:

a)

poate instantiata pentru a obtine un obiect optional prin operatia ofNullable(), de ex. Optional.ofNullable(“ Java17”);

b)

.trebuie instantiata direct pentru a obtine un obiect optional, de ex.: new Optional (“ string optional”);

c)

prezinta operatia orElseGet() care necesita un argument de tip Consumer ce poate fi furnizat printr o expresie Lambda;

d)

este parametrizata generic Optional ;

e)

prezinta operatia orElseGet() care necesita un argument de tip Supplier ce poate fi furnizat prinntr o expresie Lambda;

98.

Colectiile de tip LinkedList

a)

nu permit dublicarea elementelor

b)

sunt conforme cu interfata Collection

c)

sunt conforme cu interfata List, si pastreaza elementele dupa principiul listelor inlantuite

d)

permit adaugarea referintei unui obiect de mai multe ori

99.

Urmatoarea secvente de cod Java: List listProiect= … listProiecte.stream() filter(p -> m.getNrProiect().equals(7)) map(p.getDescriere()) forEach( -> System.out.println(p)) (presupunem variabila listProiecte initializata corect)

a)

Listeaza in final proprietatea descriere a fiecarei instante Proiect din stream-ul initial

b)

Filtreaza elementele din stream-ul initial dupa un pPredicat ce implica proprietatea descriere

c)

Listeaza in final proprietatea descriere a instantei Membru cu nrProiect 7

d)

Mapeaza elementele din stream-ul initial dupa o functie ce implica proprietatea descriere

100.

Prin declararea de membri interni campuri(sau variabile de instante) ce pot fi initializate cu referinte catre instante din alte clase:

a)

se poate aplica principiul reutilizabilitatii prin specializare;

b)

se poate aplica principiul reutilizabilitatii prin compunere;

c)

se poate aplica principiul reutilizabilitatii prin generalizare;

d)

se poate aplica principiul reutilizabilitatii prin agregare;

e)

se poate aplica principiul reutilizabilitatii prin mostenire;

101.

Comportamentul obiectelor (operatiile declarate) implementat printr-o clasa specifica poate fi abstractizat:

a)

. prin mai multe clase parinte ce vor extinde clasa initiala

b)

prin mai multe clase parinte ce vor transforma clasa initiala intr-o clasa compusa(agregat)

c)

prin segregarea in mai multe interfete ce vor fi implementate de clasa initiala;

d)

printr-o interfata care va prelua doar operatiile relevante si declarate cu specificatorul public;

102.

Valorile unei coloane de tip numeric dintr-o tabela relationala pot fi accesate dintr-un java.sql.ResultSet folosind o operatie getXXX(numeColoana) de tip:

a)

getString();

b)

getDate();

c)

getByte();

d)

getBigDecimal();

e)

getDouble();

103.

Parametrizarea generica, in contextul limbajului Java, poate fi utila pentru:

a)

tipizarea interfetelor implementate printr-o clasa concreta, de ex: public class SerieNumerica implements T{}

b)

tipizarea comparabilitatii prin metoda equals() suprascrisa relativ la clasa Object, de ex: public boolean equals(T other){…}

c)

tipizarea explicita a instantelor comparabile prin interfata Comparable, de ex: Comparable;

d)

tipizarea explicita a elementelor colectiilor standard, de ex List;

104.

Structurile de tip tabela de dispersie implementate prin HashMap:

a)

stocheaza elementele-asocieri Entry ordonat dupa un criteriu Comparator ;

b)

stocheaza elementele-asocieri Entry printr-o structura interna de tip HashSet ;

c)

stocheaza elementele-asocieri Entry ordonat dupa un criteriu Comparator ;

d)

stocheaza elementele pe baza codului hashCode() al tipului cheii K din asocierea Entry;

e)

stocheaza elementele pe baza codului hashCode() al tipului cheii V din asocierea Entry

105.

Gestionarea tranzactiilor in contextul JDBC este atributul componentelor de tip:

a)

java.sql.ResultSet;

b)

java.sql.ResultSetMetaData;

c)

java.sql.Statement;

d)

java.sql.DriverManager;

e)

java.sql.Connection;

106.

In metodologia DDD, componentele de tip Repository sunt responsabile pentru:

a)

expunerea datelor din entitatile presistente in componentele-view din stratul de prezentare

b)

implementarea regulilor de calcul complexe sub forma procesarii starii entitatilor;

c)

crearea(instantierea) structurilor compozite (agregate) de entitati complexe;

d)

gestiunea entitatilor intr-un spatiu de persistenta;

e)

asigurarea operatiilor de access-interogare-regasire-restaurare a obiectelor entitati;

107.

Pentru a crea un nou fisier folosind clasa java.io.File ar putea fi folosita metoda:

a)

new File(filePath);

b)

boolean isFile();

c)

boolean makeDir();

d)

boolean createNewFile();

e)

boolean makeNewFile();

108.

Apelul collect() catre structurile de tip java.util.Stream:

a)

reprezinta o actiune intermediara: poate acumula elementele Stream-ului intr-o tabela asociativa Map daca primeste ca argument un collector prin metoda Collectors.toMap();

b)

reprezinta o actiune terminala: poate genera o tabela asociativa Map daca primeste ca argument un collector prin metoda Collectors.groupingBy();

c)

reprezinta o actiune terminala: poate acumula elementele Stream-ului intr-o colectie daca primeste ca argument un collector prin metoda Collectors.toList();

d)

este o operatie terminala: parcurge elementele din Stream fara a returna totusi o valoare finala(void)

e)

reprezinta o actiune intermediara: poate acumula elementele Stream-ului intr-o colectie daca primeste ca argument un collector prin metoda Collectors.toCollection();

109.

Operatia filter() specificata de interfata java.util.Stream;

a)

este o operatie intermediara: produce un nou Stream dupa selectarea dupa un criteriu dat a elementelor din Stream-ul anterior;

b)

primeste ca argument un obiect de tip java.util.function.Filter;

c)

este o operatie terminala: produce o colectie dupa selectarea dupa un criteriu dat a elementelor din Stream;

d)

primeste ca argument un obiect de tip java.util.Comparator;

e)

primeste ca argument un obiect de tip java.util.function.Predicate;

110.

Initializarea unui Stream poate fi realizata in mai multe moduri, astfel;

a)

prin instantierea directa (new) a clasei java.util.Stream;

b)

prin apelul operatiei stream() din interfata java.util.Collection;

c)

cu ajutorul unei instante Stream.Builder generata de apelul Stream.builder();

d)

prin apelul operatiei buildStream() din interfata java.util.List;

e)

prin apelul operatiei statice of() din interfata suport java.util.Stream;

111.

Operatia forEach() specificata de interfata java.util.Stream:

a)

este o operatie terminala: produce o colectie dupa selectarea dupa un criteriu dat a elementelor din Stream;

b)

primeste ca argument un obiect de tip java.util.function.Predicate;

c)

primeste ca argument un obiect de tip java.util.function.Consumer;

d)

este o operatie intermediara: produce un nou Stream dupa selectarea dupa un criteriu dat a elementelor din Stream-ul anterior

e)

este o operatie terminala: parcurge elementele din Stream fara a returna totusi o valoare finala (void);

112.

Prin atributele definite la nivelul obiectelor sunt abstractizate elemente legate de:

a)

responsabilitati comportamentale ale obiectelor;

b)

structura informationala a obiectelor;

c)

starea obiectelor;

d)

referentierea obiectelor;

113.

Instantele clasei Exception sunt generate pentru:

a)

pot genera erori de compilare daca nu sunt preluate in structuri de tip switch();

b)

pot intrerupe executia unei metode si afisa mesaje la consola prin operatia printStackTrace();

c)

pot genera erori de compilare daca nu sunt preluate in structuri de tip catch();

d)

afisarea la consola a unor mesaje catre utilizatori care parametri al operatiei println() din System.out;

114.

Urmatoarea secvente de cod Java:

a)

Listeaza in final proprietatea descriere a fiecarei instante Proiect din stream-ul initial

b)

Listeaza in final proprietatea descriere a instantei Membru cu nrProiect 7

c)

Filtreaza elementele din stream-ul initial dupa un Predicat ce implica proprietatea descriere

d)

Mapeaza elementele din stream-ul initial dupa o functie ce implica proprietatea descriere

115.

Pentru a obtine o lista de instante ale entitatii Comanda prin urmatoarea interogare String queryString = “SELECT c FROM Comanda c WHERE c.valoareaTotala > :p_valoare_totala”; Ar putea fi executata urmatoarea secventa de cod:

a)

List comenzi =em.createQuery(queryString, Comanda.class).getResultList();

b)

List comenzi = em.createNamedQuery(queryString, Comanda.class).setParameter(“p_valoare_comanda”, 1350).getResultList();

c)

List comenzi = em.createNativeQuery(queryString, Comanda.class).setParameter(“p_valoare_comanda”, 1350).getResultList();

d)

List comenzi = em.createQuery(queryString, Comanda.class).setParameter(“p_valoare_comanda”, 1350).getResultList();

116.

?

a)

Functia reduce(0,(x,y) -> x+y) ar fi echivalenta cu count().

b)

Functia reduce(0,(x,y) -> x+y) ar fi echivalenta cu sum(). + f)Agregarea map/reduce ar putea fi inlocuita cu Collectors.collet(summingDouble(e -> e.getMembri().size()));

c)

Procesarea Stream ar putea fi echivalenta cu SELECT COUNT(e) FROM echipe e WHERE e.specializare <>’BACKEND’

d)

Procesarea Stream ar putea fi echivalenta cu: SELECT SUM(e.membri.size) FROM echipe e WHERE e.specializare=’BACKEND’

e)

Procesarea Stream ar putea echivalenta cu SELECT COUNT(e) FROM echipe e WHERE e.specializare=’BACKEND

117.

?

a)

Rezultatul final corect ar fi: 1,2,3

b)

Expresia de initializare lambda pentru comparatorMembriEchipa nu este valida pentru ca structura Comparator nu este interfata + c)Rezultatul final corect ar fi: M3,M2,M1

c)

Rezultatul final corect ar fi: 3,2,1

d)

Expresia de initializare pentru comparatorMembriEchipa nu este valida pentru ca interfata Comparator nu este functionala

e)

Variabila comparatorMembriEchipa este initializata corect, dar expresia lambda poate fi simplificata prin inferenta parametrilor

118.

In cazul interfetelor, spre deosebire de clase:

a)

nu este permisa nici o alta declaratie cu exceptia operatiilor

b)

. cu exceptia operatiilor, mai sunt permise declaratiile de constante

c)

este posibila chiar si mostenirea multipla

d)

nu este permisa mostenirea sub nici o forma

119.

In programarea OO ascunderea informatiei se refera la:

a)

Protejarea detaliilor structurale(informationale) ale obiectelor

b)

Gestionarea vizibilitatii atributelor sau variabilelor de instanta

c)

Vizibilitatea operatiilor sau metodelor de implementare

d)

“incapsularea comportamentala” a obiectelor

120.

?

a)

Successfully processed: ssh user@dns

b)

Test Exceptions: ProcessComandException: Unknown command!

c)

Eroare compilare: lipseste blocul try-catch pentru operatia testCommands

d)

Java.lang.RuntimeException: Command empty!

e)

ProcessComandException: Command empty!

121.

Declaratia unei variabile de instanta in Java presupune specificarea

a)

vizibilitatii

b)

tipului

c)

argumentelor parametrizabile

d)

numelui

e)

(optional) a unei valori de initializare default + f)caracterului primitiv sau non-primitiv

122.

?

a)

Rezultatul final corect ar fi: Developer 4

b)

Rezultatul final corect ar fi: Developer 5

c)

Procesarea are in vederea cautarea in tabela de asocieri a membrului de pe pozitia 4(al cincilea in ordinea instantierii)

d)

Rezultatul final corect ar fi: 4 + f)Procesarea are in vederea cautarea in tabela de asocieri a membrului cu id-ul 4.

e)

Procesarea are in vederea cautarea in tabela de asocieri a cheii cu valoarea 4

123.

Operatia Stream filter(Predicate):

a)

Este o operatie intermediara

b)

Se refera la crearea unui nou stream continand doar elemente selectabile printr-un predicat lambda

c)

Este o operatie finala

d)

Se refera la conversia elementelor initiale in instante din alt tip

124.

Fiind data urmatoarea secventa de cod: String str_1 = “sys”; String str_2 = “object”; String str_3 = new String(“sys”); Care din urmatoarele expresii vor fi evaluate true:

a)

(str_1 == str_2)

b)

(str_1 == str_3)

c)

(str_2 == str_3)

d)

(str_2 != str_3)

125.

Ce ar putea fi reprezentat/abstractizat cu ajutorul obiectelor?

a)

Concepte, termeni, probleme, solutii

b)

Entitati, servicii, valori descriptive

c)

Date, procese, spatii de stocare

d)

Componente grafice, modele ale afacerii, spatii de persistenta

126.

Fiind data urmatoarea secventa de cod: String str_1 = “SELECT o FROM Client c WHERE c.cod = 111” String s_str_1 = str_1.substring(0, 8); Care va fi rezultatul urmatoarei instructiuni: String s_str_2 = str_1.substring(s_str_1.length() + 1,(s_str_1.length() + 1) + 13); System.out.println(s_str_2);

a)

o FROM Client

b)

FROM Client c

c)

Where c.cod

d)

Client c WHERE

127.

Cum ar trebui completat următorul comparator de produse: class ComparatorProduse implements Comparator{ public int compare(Produs p1, Produs p2) { /* ??? ??? ????*/; } } pentru ca din următorul test public static void main(String[] args) { List produse = new ArrayList(); Double newPret = 50.0; for ( int i=1; newPret <= 1000.0; i++){ newPret = newPret * i; produse.add( new Produs(i, "P_" + i, newPret)); } Collections. sort (produse, new ComparatorProduse()); for (Produs p: produse) System. out .println(p); } } să se obţină următoarea listă de produse (în ordinea specificată): Produs id: 4, denumire: P_4, pret unitar: 1200.0 Produs id: 3, denumire: P_3, pret unitar: 300.0 Produs id: 2, denumire: P_2, pret unitar: 100.0 Produs id: 1, denumire: P_1, pret unitar: 50.0

a)

Return -p2.getPretUnitar().compareTo(p1.getPretUnitar()

b)

Return p1.getPretUnitar().compareTo(p2.getPretUnitar()) + e)If (p2.getPretUnitar() > p1.getPretUnitar()) return -100; If (p2.getPretUnitar() < p1.getPretUnitar()) return 100; Return 0;

c)

Return p2.getPretUnitar().compareTo(p1.getPretUnitar())

d)

If(p2.getPretUnitar() > p1.getPretUnitar()) return 100; If (p2.getPretUnitar() < p1.getPretUnitar()) return -100; Return 0;

e)

Return -p1.getPretUnitar().compareTo(p2.getPretUnitar())

128.

Urmatoarea secventa de cod Java:

List listMembri = ...; listMembri.stream() .filter(m -> m.getIdMembru().equals(4)) .map(m.getNumePrenume()) .forEach(m -> System.out.println(m)); (presupunem variabila listMembri initializata corect)

a)

Mapeaza elementele din stream-ul initial dupa o Functie ce implica proprietatea idMembru

b)

Listeaza in final proprietatea numePrenume a fiecarei instante Membru din stream-ul initial

c)

Listeaza in final proprietatea numePrenume a instantei Membru cu idMembru 4

d)

Filtreaza elementele din stream-ul initial dupa un Predicat ce implica proprietatea idMembru

129.

Spre deosebire de clase, interfetele

a)

descriu starea obiectelor printr-un set de constante

b)

descriu compartamentele obiectelor printr-un set de operatii publice

c)

nu permit declararea variabilelor de instanta sau de clasa

d)

nu sunt obligate sa asociaze operatiilor si metode de implementare specifice

130.

) Vizibilitatea claselor Java la nivelul (in cadrul) pachetelor poate fi exprimata:

a)

Prin specificatorul public

b)

Prin specificatorul protected

c)

Prin specificatorul private

d)

Prin omiterea specificatorului de vizibilitate (friendly)

131.

Instantele clasei Exception (sau ale subclaselor sale):

a)

pot fi aruncate prin instructiunea throw

b)

) pot fi returnate prin instructiunea return

c)

nu trebuie tratate local, chiar daca nu sunt declarate in semnatura (definitia) metodelor din care sunt “aruncate”

d)

trebuie declarate in semnatura (definitia) metodelor din care sunt “aruncate”, daca nu sunt tratate local

132.

In cadrul JPA, in clasele entitati declarate @Entity ar putea fi introdusa si:

a)

adnotarea @SingleToMany pentru definirea asociatiilor 1-M cu alte entitati din model;

b)

adnotarea @OneToMany pentru definirea asociatiilor 1-M cu alte entitati din model;

c)

adnotarea @Id pentru definirea campului care va genera cheia primara a tabelei SQL de mapare;

d)

) adnotarea @PrimaryKey pentru definirea campului care va genera cheia primara a tabelei SQL de mapare;

133.

Colectiile de tip TreeSet :

a)

permit adaugarea referintei unui obiect de mai multe ori;

b)

nu permit dublicarea elementelor;

c)

) sunt conforme cu interfata Map;

d)

sunt conforme cu interfata Collection , dar pastreaza elementele ordonat dupa principiul codificat prin implementarea metodei compareTo().

134.

Cum ar trebui completat următorul comparator de produse: class ComparatorProduse implements Comparator{ public int compare(Produs p1, Produs p2) { /* ??? ??? ????*/; } } pentru ca din următorul test public static void main(String[] args) { List produse = new ArrayList(); Double newPret = 50.0; for ( int i=1; newPret <= 1000.0; i++){ newPret = newPret * i; produse.add( new Produs(i, "P_" + i, newPret)); } Collections. sort (produse, new ComparatorProduse()); for (Produs p: produse) System. out .println(p); } } să se obţină următoarea listă de produse (în ordinea specificată): Produs id: 4, denumire: P_4, pret unitar: 1200.0 Produs id: 3, denumire: P_3, pret unitar: 300.0 Produs id: 2, denumire: P_2, pret unitar: 100.0 Produs id: 1, denumire: P_1, pret unitar: 50.0

a)

return p1.getPretUnitar().compareTo(p2.getPretUnitar());

b)

) return p2.getPretUnitar().compareTo(p1.getPretUnitar());

c)

return - p2.getPretUnitar().compareTo(p1.getPretUnitar());

d)

) return - p1.getPretUnitar().compareTo(p2.getPretUnitar());