Grile POO
Exploring Object-Oriented Programming Concepts
Test your knowledge of Object-Oriented Programming (OOP) with this comprehensive quiz designed for enthusiasts and learners alike. Dive into various concepts, including class structures, constructors, and threading in Java.
Key Features:
- Multiple-choice questions for quick assessments
- Engaging scenarios to deepen understanding
- Check your grasp of essential OOP principles
Cum se numeste Layout Manager-ul care permite asezarea unor componente in nord,sud, este, vest si centru?
GridLayout
CardLayout
BorderLayout
FlowLayout
BoxLayout
GridBagLayout
In interiorul unei metode ne-statice, care este cuvantul cheie care poate fi utilizat ca referinta la obiectul pentru care se executa metoda respective?
Care este relatia dintre o clasa si un obiect?
Obiectul este o clasa a unei instante
Obiectul este o instanta a unei clase
Obiectul si clasa coincid
Clasa este o instanta a unui obiect
Instanta este o clasa a unui obiect
Clasa este un obiect al unei instante
Un constructor are care din urmatoarele proprietati?
Are acelasi nume cu numele clasei de care apartine
Nu are tip retunat
Este intotdeauna void
Incepe intotdeauna cu litera mica
Este apelat cand se instantiaza obiecte de tipul clasei
Trebuie obligatoriu declarat si definit in orice clasa
In codul de mai jos, ,,result" este:
Un camp
O variabila interna
O variabila publica
O variabila locala
O metoda
O variabila privata
O functie
Care este numele clasei care permite conectarea la un calculator din retea, identificat prin adresa si port?
Care este cuvantul cheie utilizat in declaratia unei metode, pentru a atrage atentia ca metoda poate arunca diferite tipuri de exceptii?
Care este numele metodei care trebuie apelata de un thread pentru a astepta o notificare de la un alt thread?
NotifyAll
Notify
Sleep
Usleep
Wait
Pause
Cu exceptia cazului cand se instantiaza vectori, operatorul new este urmat intotdeauna de:
Declaratia unui constructor
Apelul unei metode oarecare
Declaratia unei variabile
Declaratia unei metode
Declaratia unei clase
Apelul unui constructor
Campul ,,serialVersionUID" are ca rol:
Alinierea dimensiunii obectului la un multiplu de 32 biti
Sa permita serializarea corecta a obiectului
Sa verifice daca versiunea clasei de la deserializare este aceeasi si cu versiunea clasei de la serializare
Sa genereze un identificator unic pentru fiecare obiect serializat
Sa afiseze corect mesajul deserializat
Sa genereze un identificator unic pentru fiecare obiect deserializat
Cum se numeste conceptul care permite definirea mai multor metode cu acelasi nume, dar tip/ numar ,ordine de argumente diferite?
Suprascriere
Polimorfism
Abstractizare
Incapsulare
Supraincarcare
Mostenire
Ce reprezinta conceptul de suprascriere?
Schimbarea unei clase
Modificarea si salvarea unui fisier cu acelasi nume
Re-definirea intr-o clasa derivata a unei metode deja definite intr-una din clasele de baza.
Salvarea a doua clase diferite in acelasi fisier sursa
Atribuirea unei valori diferite unei variabile
Definirea mai multor metode cu acelasi nume dar cu un numar/tip/ordine a argumentelor diferite
Care este cuvantul cheie care poate fi folosit pentru a apela un constructor al clasei de baza dintr-un constructor al clasei derivate?
Care este cuvantul cheie care trebuie folosit pentru a nu permite mai multor thread-uri sa execute in acelasi timp aceeasi metoda?
In codul de mai jos, ,,value" este:
O variabila interna
Un camp
O variabila locala
O variabila publica
O functie
O metoda
In codul de mai jos, ,,increment" este :
O variabila locala
O interfata
O metoda
Un camp
O variabila privata
O variabila publica
Pentru ca o clasa sau un membru al unei clase sa poata fi accesibil din orice alta clasa a aplicatiei, modificatorul de acces utilizat trebuie sa fie:
Care este numele metodei definite in clasa Thread care trebuie apelata pentru a porni un nou fir de executie?
Pachetul care este implicit importat in orice clasa Java este:
Java.io
Java.base
Java.lang
Java.net
Javax.swing
Java.exception
Penru ca un membru al unei clase sa poata fi accesibil doar in interiorul claseii de care apartine, modificatorul de access utilizat trebuie sa fie:
Dandu-se clasele urmatoare, care din afirmatiile de mai jos se potrivesc cu conceptul de polimorfism?
Un obiect de tip B este si de tip A
Un obiect de tip A este si de tip C
Un obiect de tip C este si de tip B
Un obiect de tip B este si de tip C
Un obiect de tip I este si de tip C
Un obiect de tip C este si de tip A
Un obiect de tip A este si de tip B
Un obiect de tip C este si de tip I
Care este cuvantul cheie folosit la declaratia unei clase atunci cand aceasta foloseste o interfata?
Care este numele metodei care trebuie suprascrisa intr-o clasa ce extinde java.lang.Thread pentru a defini ce se va executa pe noul thread?
Pentru ca un membru al unei clase sa nu poata fi accesibil decat din clasa unde a fost definit, de clasele din acelasi pachet, si de clasele derivate din clasa in care este definit, acesta trebuie sa aiba modificatorul de access…
Dandu-se clasa cu numele Animal, un apel de forma Animal::printNume() este facut catre o functie statica.
Da
Nu
Avantajele utilizarii unei referinte ca argument de metoda sau functie in loc de un obiect concret sunt:
Folosind referinta, variabila trimisa ca argument se poate modifica in interiorul functiei (pass-by-reference)
Se separa complet variabila trimisa ca argument de cea din interiorul functiei
Se evita copierea pe stiva a obiectului, lucru avantajos daca aceasta ocupa multa memorie.
Folosinf referinte ca argument se pot apela functii/metode cu obiecte din clase derivate din cea declarata ca argument (polimorfism)
Care este clasa ce permite executia mai multor functii In paralel?
Std::stream
Std::mutex
Std::parallel
Std::thread
Std::parallel_stream
Care este cuvantul cheie care intra in componenta numelui metodei care se declara pentru supraincarcarea unui operator?
Pentru ca o metoda sa poata fi suprascrisa intr-o clasa extensa ea trebuie sa fie declarata:
Virtual
Inainte de constructor
Protected
Override
Public
Avand clasa Carte care continue un obiect de tip clasa Autor, putem spune ca
Nu este o relatie de mostenire intre ele, ci de compozitie
Clasa autor este derivata din carte
Clasa carte este derivata din autor
Daca o clasa Veverita este derivata din clasa Animal codul: Animal*animal = new Veverita();
Este corect deoarece intr-un obiect Animal avem si un obiect Veverita(din moment ce clasa Veverita este derivate din animal)
Nu este corect deoarece intr-un obiect Animal avem si un obiect Veverita (din moment ce clasa Veverita este derivata din animal)
Un membru de tip static apartine clasei nu obiectului , in sensul ca daca se schimba valoarea sa intr-unul dintre obiectele de tipul clasei respective, se schimba in toate obiectele.
Da
Nu
Care este cuvantul cheie plasat dupa lista de argumente a unei metode pentru a specifica faptul ca aceasta este suprascrisa?
Care este cuvantul cheie folosit pentru a supraincarca o metoda?
Pentru supraincarcare nu este folosit niciun cuvant cheie
Virtual
Overload
Abstract
Overwrite
Dandu-se clasa Animal si clasa Leu derivata din ea, este sintactic corect sa scriem: Leu*un_leu = new Animal();
Da
Nu
Care este clasa ce permite sincronizarea executiei unei sectiuni de cod astfel incat aceasta sectiune sa nu poata fi executata in acelasi timp de mai multe fire de executie-uri?
Std::mutex
Std::parallel
Std::parallel_stream
Std::thread
Std::semaphore
Un obiect de tip B este si de tip C
Un obiect de tip C este si de tip I
Un obiect de tip A este si de tip B
Un obiect de tip A este si de tip C
Un obiect de tip I este si de tip C
Un obiect de tip C este si de tip B
Un obiect de tip B este si de tip A
Un obiect de tip C este si de tip A
La ce linie se gaseste eroarea din codul de mai jos?
Codul da eroare la linia 8.
Codul da eroare la linia 5.
Codul da eroare la linia 7.
Codul da eroare la linia 6.
Codul da eroare la linia 9.
Ce este o clasa ,,copy constructable''?
O clasa care are definit(implicit sau explicit) un constructor de copier
O clasa care are definit implicit un constructor de copere
O clasa care este extinsa
O clasa care are definit explicit un constructor de copiere
O clasa care are cel putin doi constructori
Care din urmatoarele cuvinte se potrivesc cu pattern-ul: .*A.?
IohununnB0
PojubuybbnuabfadfnA1
Milka94382891-23j2unsbdhuafbdsfabnkjAh
FsdadfsaasA
AdsopmfjaAdfjskfndsdjnsk
Care este operatorul care trebuie supraincarcat intr-o clasa astfel incat un vector de astfel de obiecte sa poata fi sortat implicit folosind functia std::sort?
Operator==
Operator<
Operator>
Operator=<
Operator<>
Cum se face apelul unei metode de către un obiect?
Cu operatorul : :
Cu operatorul punct
Cu operatorul & (ampersand)
Cu operatorul *
Pentru ca un obiect sa apeleze o metoda folosim operatorul:
.= punct
& =ampersand
~ = tilda
: : = de rezolutie
In clasa de baza este declarat un atribut protected, unde este acesta accesibil?
In clasele derivate si in functia main
In clasa de baza si in toate clasele derivate din acea clasa de baza
Doar in clasa de baza
Doar in clasele derivate
Ce parametru are constructorul de copiere?
Nu primeste parametru
Un parametru care are acelasi nume cu unul din atributele clasei
O referinta constanta la un obiect de tipul clasei
Un parametru de tipul string/int/float/double
Ce modificator de acces este folosit implicit la o metodă din clasa derivată dacă nu îl precizăm explicit?
Protected
Public
Private, daca nu e precizat nici un modificator care precede acea functie
Daca nu precizam modificatorul vom primi eroare la compilare
Presupunând că în clasa Factura este definită o funcție membră nestatică publică denumită Total(), ce returnează suma totală de pe factura curentă. Clasa Factura conține un atribut privat nestatic denumit Valoare, care reține valoarea facturii. Considerând obiectul F de tip Factura, care dintre următoarele instrucțiuni afișează corect totalul de pe factură?
Niciuna dintre variantele anterioare
Cout < < Factura.Total();
Cout < < Factura::Total();
Cout < < F.Total();
Cum se moștenesc constructorii?
Prin rescrierea acelui constructor in clasa derivata
Constructorii nu se mostenesc
Prin folosirea operatorului : :
Prin folosirea operatorului punct
Ce element este comun constructorului implicit și celui de copiere?
Definitia
Numarul parametrilor
Tipul parametrilor
Numele constructorului
O funcție ,,friend" poate fi definită:
Fie in interiorul fie in exteriorul clasei
Doar in exteriorl clasei, folosind operatorul de rezolutie
Doar in interiorul clasei
Doar in exteriorul clasei
La ce foloseste operatorul : : ?
La apelarea unui constructor inafara clasei
La precizarea clasei din care apartine o metoda
La apelarea unui constructor in functia main
La precizarea clasei din care se face mostenirea
Legatura dintre clase si obiecte este:
Nu exista o legatura intre obiect si clasa
O clasa este o instanta a unui obiect
Un obiect este o instanta a unei clase
Un obiect poate apela o clasa cu operatorul : ( 2 puncte)
De ce functia friend nu primeste operatorul de rezolutie cand este definita inafara clasei?
Pentru ca nu are acces la atributele private ale clasei
Pentru ca nu poate fi mostenita
Pentru ca nu are parametrii
Pentru ca nu este membra a clasei
Ce se intampla daca nu precizam modificatorul de acces la mostenire?
Primim eroare
Se considera implicit public
Se considera impicit protected
Se considera implicit private
Care dintre următoarele variante reprezintă o declarație corectă pentru un constructor al clasei Factura? Presupunem că atributele pe care le conține această clasă sunt numărul facturii și numele clientului.
Void Factura();
Factura(int, string);
FacturaConstructor();
Void Factura::Factura();
Factura();
In ce conditii compilatorul creaza constructor implicit intr-o clasa?
Daca avem un constructor implicit deja definit in clasa derivata
Doar daca cream noi alt tip de constructor
Daca nu cream functii friend
Daca cream cel putin un obiect in functia main
Constructorul implicit:
Poate prelua argumente, doar in situatii exceptionale
Este oferit de compilator, indiferent de cati constructori sunt deja implementati
Nu este oferit de catre compilator, decat daca am definit cel putin un alt constructor
Este oferit implicit de catre compilator doar daca nu am definit alti constructori
Care este modificatorul implicit pentru moștenire?
Protected
Modificatorul trebuie precizat intotdeauna
Public
Private
Când folosim operatorul punct?
Cand un pointer la un obiect apeleaza o metoda a clasei
Cand un obiect apeleaza o metoda a unei clase
Cand o metoda a clasei apeleaza un obiect
Cand cream o clasa derivata dintr-o clasa de baza
Funcţii inline în C++:
Corpul functiei se expandeaza in momentul apelului
Se pot define pointeri la astfel de functii
Argumentele seunt salvate pe stiva
Definitia acesteia se cere in afara clasei
Entitatea ,,this":
Reprezinta o referinta instantei unei clase
Reprezinta un argument implicit al unei functii, daca unul din argumentele acesteia este un obiect
Reprezinta un argument implicit al fiecarei metode a unei clase, fiind transparent pentru programator
Reprezinta o referinta a clasei
Unde sunt accesibile datele de tip protected?
In clasa de baza, in unele clase derivate din acea clasa de baza si in functia main
Doar in functia main
Doar in clasa de baza
In clasa de baza si in clasele derivate din acea clasa de baza
Care este declarația corectă a constructorului de copiere al clasei Factura?
Void Factura::Factura(const Factura&);
Factura& Factura (const Factura&)
Factura(const Factura&);
Nici una din variante
Factura Factura( Factura&);
Friend Factura(Factura);
De ce nu se foloseste operatorul de rezolutie la functia friend cand e definita inafara clasei?
Pentru ca functia friend nu are acces la datele si functiile membre din clasa
Pentru ca functia friend nu este functie membra a clasei
Pentru ca functia friend nu poate avea parametri
Pentru ca functia friend nu are tip de data
Considerăm că A este clasă de bază pentru clasa B, iar B este clasă de bază pentru clasa C. Când creați un obiect al clasei C:
Este posibil sa nu se apeleze nici un constructor, in cazul in care clasele nu au constructori definiti
Apeleaza doar un constructor al clasei C
E apeleaza mai intai un constructor al clasei C, apoi unul al clasei B, apoi apoi unul alclasei A
E apeleaza mai intai un constructor al clasei A, apoi un constructor al clasei B, apoi al clasei C
Se dă o clasă Factura în care este definită o funcție membră nestatică publică denumită Scrie(), care afișează la ecran date referitoare la factura curentă. În definiția acestei funcții în exteriorul clasei ne putem referi la data membră privată Cod astfel:
Cod
F.cod
Factura.cod
This->cod
Ce înseamnă ,,supraîncărcarea" metodelor?
Patrarea corpului de functie identic
Pastrarea semnaturii identice
Pastrarea parametrilor identici si variatia corpului
Variatia numarului si a tipului de parametri
Ce caracter este marcat la începutul numelui destructorului?
: : = operatorul de rezolutie
& = ampersand
~ = tilda
. = punct
La suprascriere ce elemente ale functiei variaza?
Parametri si corpul
Doar parametrii
Tipul de data, numele si parametrii
Doar corpul functiei
Cum se poate realiza supraincarcarea metodelor?
Prin modificarea tipului si numarului de parametri la acea metoda
Prin pastrarea semnaturii identice si variatia corpului pentru acea metoda
Prin pastrarea numelui de metoda identic dar si a corpului
Prin pastrarea numarului de parametri la acea metoda dar pastrareacorpului identic
Cu exceptia cazului cand se distrug vectori, operatorul ,,delete" este urmat intotdeauna de:
Declaratia unei variabile
Declaratia unei clase
Declaratia unei metode
Numele clasei de distrus
Numele pointerului la obiectul distrus
Numele obiectului de distrus
Apelul unui destructor
Apelul unei metode oarecare
Declaratia unui destructor
Un pointer la obiecte de tipul clasei derivate poate referi obiecte de tipul clasei de baza
Fals
Adevarat
Cum se apeleaza din cod destructorul implicit sau explicit al clasei numite ,,Converter"?
~Converter();
Delete (new Converter());
Niciuna dintre optiuni
Delete (~Converter);
Delete ( Converter);
Delete (new ~Converter());
Cuvantul cheie plasat dupa lista de argumente a unei metode pentru a specifica faptul ca aceasta este suprascrisa este „overwrite”?
Adevarat
False
N definitia unei clase derivate D dintr-o clasa de baza B pot exista:
Pointeri de tip B
Constante de tip unsigned
Vectori de tip int
Obiecte nestatice de tip D
Obiecte nestatice de tip B
Pointeri de tip D
Care varianta de mai jos este declaratia corecta a unei clase?
Public class Oxygen extends Atom{}
Public Oxygen class Atom{}
Class Oxygen public Atom{}
Public Oxygen extends Atom{}
Class Oxygen extends public Atom{}
Class Oxygen : public Atom{}
Public Oxygen extends class Atom{}
Fie clasa struct Person { std::string name; int age; }; Care este implementarea corectă pentru operatorul de scriere pe un stream de ieșire?
0%
0
0%
0
0%
0
0%
0
0%
0
0%
0
0%
0
0%
0
0%
0
0%
0
Care este sintaxa corecta pentru declararea unui constructor de opiere pentru o clasa numita Myclass?
MyClass( const MyClass & other);
MyClass create( MyClass other);
MyClass ( MyClass other);
MyClass & create( const MyClass & other);
MyClass create( const MyClass & other);
Care este greseala din codul de mai jos?
Metoda print trebuie sa nu contina cuvantul cheie override
Metoda sum din clasa B trebuia declarata override
Metoda print nu poate fi declarata de tip const qualified
Metoda pur virtuala sum din clasa A nu a fost implementata in clasa B.
Codul va compila fara erori
{"name":"Grile POO", "url":"https://www.quiz-maker.com/QPREVIEW","txt":"Test your knowledge of Object-Oriented Programming (OOP) with this comprehensive quiz designed for enthusiasts and learners alike. Dive into various concepts, including class structures, constructors, and threading in Java.Key Features:Multiple-choice questions for quick assessmentsEngaging scenarios to deepen understandingCheck your grasp of essential OOP principles","img":"https:/images/course1.png"}