Test grilă ianuarie 2021

1. Având în vedere codul de mai jos, care dintre afirmațiile de mai jos sunt adevărate în ceea ce privește conceptul de imutabilitate aplicat în cazul clasei Student?

class Student {
      long id;
      List<Double> grades;
}
  1. Ambele câmpuri să fie final
  2. Să avem doar metode de tip getter pentru câmpuri
  3. Să avem metode de tip getter și setter pentru câmpuri
  4. În getter-ul pentru grades, trebuie să întoarcem o copie a obiectului grades
  5. În getter-ul pentru grades, putem să întoarcem pur și simplu grades
  • toate
  • 1, 2, 4
  • 1, 2, 5
  • 1, 3, 5

2. Care dintre afirmațiile de mai jos sunt adevărate?

  1. Într-un Set putem avea duplicate
  2. În LinkedHashMap se păstrează ordinea de inserție a elementelor
  3. Interfața Map extinde interfața Collection
  4. În TreeSet nu se păstrează ordinea de inserție a elementelor
  • toate
  • 2 și 4
  • 1, 2, 3
  • 1, 3

3. Care dintre următoarele afirmații despre clase abstracte în Java sunt false:

  1. Dacă derivăm o clasă abstractă și nu implementăm toate metodele abstracte, atunci clasă derivată trebuie de asemenea să fie abstractă
  2. Clasele abstracte pot avea constructori
  3. O clasă nu poate fi abstractă fără o metodă abstractă
  4. O clasă abstractă poate moșteni de la mai multe clase abstracte
  • 1, 2
  • 1, 3
  • 3, 4
  • 1, 3, 4

4. Care dintre următoarele afirmații despre interfețe și clase abstracte sunt adevărate?

  1. O clasă poate moșteni în același timp mai multe clase abstracte
  2. O interfață poate moșteni mai multe interfețe în același timp
  3. O interfață poate moșteni o clasă abstractă care are doar metode abstracte
  4. O clasă poate implementa mai multe interfețe în același timp
  • 1, 2, 3
  • 2, 4
  • 1, 2, 3, 4
  • 2, 3, 4

5. Care dintre următoarele afirmații e corectă?

  • Cuvântul final în fața unei metode arată faptul că acea metodă poate fi apelată doar în clasa respectivă
  • Cuvântul final în fața unei clase înseamnă că nu poate fi instanțiată
  • Cuvântul final în fața unei variabile arată că acea variabilă poate fi asignată o singură dată
  • Cuvântul final în fața unei variabile arată că acea variabilă nu poate fi moștenită

6. Care dintre următoarele variante nu are legătură cu încapsularea?

  • expunerea unei interfețe de lucru cu obiectul
  • accesul la membri privați folosind metode de tip getter și setter
  • construirea de obiecte complexe și ascunderea modului lor de funcționare
  • posibilitatea suprascrierii (overriding) metodelor

7. Care este outputul următorului program?

  • Old shininess: 0 | New shininess: 10
  • Old shininess: 0 | New shininess: 0
  • Old shininess: null | New shininess: 0
  • Old shininess: null | New shininess: 10

8. Care instanțiere este corectă?

  • List<Integer> list = new ArrayList<Object>();
  • ArrayList<Integer> list = new List<Integer>();
  • List<Integer> list = new ArrayList<Integer>();
  • ArrayList<Object> list = new ArrayList<Integer>();

9. Ce design pattern face ușoară separarea operațiilor de obiectele pe care se execută operațiile respective?

  • Builder Pattern
  • Visitor Pattern
  • Factory Pattern
  • Observer Pattern

10. Ce design pattern trebuie să folosim în caz că dorim ca un client să nu aibă rol în crearea unui entități după o preferință de a sa?

  • Singleton Pattern
  • Factory Pattern
  • Builder Pattern
  • Observer Pattern

11. Ce fel de Singleton este această secvență de cod?

  • Singleton cu inițializare eager
  • Singleton cu inițializare lazy
  • nu avem Singleton aici
  • Singleton cu inițializare în blocuri statice

12. Ce metode pot fi accesate din clasa MyTest?

  • execute1, execute2 din Test, execute2 din MyTest
  • execute1, execute2 din Test, execute3, execute2 din MyTest
  • execute2 din Test, execute2 din MyTest
  • execute2 din MyTest

13. Ce reprezintă o metodă default în cadrul unei interfețe?

  • o metodă abstractă
  • o metodă non-statică care este deja implementată într-o interfață
  • o metodă statică implementată într-o interfață
  • nu putem avea metode default într-o interfață

14. Ce se afișează la rularea acestui cod?

  • Opening document Cannot open csv
  • Adobe is opening pdf Cannot open csv
  • Adobe is opening pdf Opening csv
  • Opening document Opening csv

15. Ce se va afișa la execuția codului de mai jos?

  • BCA
  • ACB
  • ADB
  • BDA

16. Ce tip de clasă reprezintă următoarea implementare?

Predicate<Integer> check = x -> x % 2 == 0;
  • clasă locală
  • clasă anonimă
  • clasă nested non-statică
  • clasă nested statică

17. Ce va afișa programul?

  • goodluck:goodluckluck
  • goodluck:goodgoodluck
  • goodluck:goodluck
  • goodluck:luckgoodluck

18. Identificați pe care linii avem suprascriere (overriding) și pe care avem supraincărcare (overloading) corecte, fără erori de compilare:

  • Suprascriere: 1, Supraincărcare: 3, 4
  • Suprascriere: 1, 2, Supraincărcare: 3,4
  • Suprascriere: 3, 4, Supraincărcare: 1, 2
  • Suprascriere: 3, 4, Supraincărcare: 1

19. În ce zonă de memorie sunt stocate obiectele?

  • pe stivă
  • pe heap
  • în memoria cache
  • memoria externă

20. Pentru ce folosim map() pe colecții și pe arrays în Java?

  • pentru a selecta elementele dintr-o colecție / dintr-un array care respectă o condiție reprezentată de funcția lambda dată că parametru
  • pentru a aplica o operație pe fiecare element din cadrul colecției sau al array-ului, operație reprezentată de funcția lambda dată că parametru
  • pentru a reduce elementele unei colecții / unui array la un singur element prin operația reprezentată de funcția lambda dată că parametru
  • pentru a crea o nouă copie a colecției / al array-ului
poo-ca-cd/test/test_2021.txt · Last modified: 2022/01/22 12:52 by florin.mihalache
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0