Documente Academic
Documente Profesional
Documente Cultură
4) Ce este adevarat?
5) Despre clase
a)pot fi derivate din mai multe clase simultan
(b)pot implementa mai multe interfete simultan
c)pot avea indexator static
(d)se pot declara ca fiin nederivabile
8) Dupa inchiderea unui obiect de tip DataReader conexiunea folosita este automat inchisa
a)da
b)nu
(c)depinde
11) Cum se scrie o clasa generica,ce implementeaza explicit interfata IMyInterface negenerica,iar parametrul de generitate
este de tip valoare?
a)class MyGenrericClass<T>:where T:value,IMyInterface
(b)class MyGenericClass<T>:IMyInterface where T:value
c)class MyGenericClass:IMyInterface<T>where t:value
d)class MyGenericClass<T>:IMyInterface<T>where T:struct
13) Cum procedez daca vreau sa arat ca o metoda poate arunca o exceptie?
a)folosesc un atribut
b)folosesc”throws”dupa numele metodei
c)folosesc”throw”dupa numele metodei
d)folosesc catch in metoda
15) Am o variabila de tip intreg,trebuie sa o trimit ca parametru unei metode,vreau ca modificarea valorii survenite in
metoda sa fie vizibila in exterior.Cum procedez?
(a)o transmit prin ref
b)o transmit prin out
c)o transmit prin valoare
d)ii fac boxing
e)nu se poate
18) Daca avem: String s=”abc”; si vrea ca s sa indice catre “ABC”,cum se procedeaza?
a)S[0]=’A’; S[1]=’B’; S[2]=’C’;
b)S[0]=”A”;S[1]=”B”;S[2]=”C”;
c)S.ToUpper;
d)S.ToUpper();
e)S.toUpper;
f)S.toUpper();
(g)S=S.ToUpper();
h)S=S.toUpper();
i)nu se poate
19) Cum anume se specifica faptul ca un obiect de tip Command din ADO.NET se refera la procedura static?
a)prin proprietatea CommandTest
(b)prin proprietatea CommandType
c)nu se poate
20) Functionaliatea de nivel scazut este implementata de catre:
a)CTS
b)CLS
(c)Base Class Library
d)Garbage Colector
e)CLR
31) Ce interfata trebuie sa implementeze un tip de date pt a se putea folosi in conjunctie cu….
a)IEnumerator
(b)IEnumerable
c)ICollection
d)IList
35) Metoda folosita pentru umplerea unui DataTable folosind un contact de tipul…este…
a)DataAdapter,Read
b)DataReader,Read
c)DataAdapter,Update
d)DataAdapter,GetData
e)Connection,GetData
37) Intr-o clasa,cu un camp instant declarant ca protected internal.Cinere are acces la el?
(a)orice metoda in clasa curenta
b)orice metoda dintr-o clasa derivate,dar numai daca derivta este in acelasi assembly
(c)orice metoda dintr-o clasa derivate
(d)orice clasa dintr-o clasa din acelasi assembly
e)orice metoda de oriunde
44) Cum arata un string de conexiune care indica pre instant sql server ?
a) "Data Source=statia1\sqlexpress;database=examene;User ID=gigi;pwd=123"
49) Pt a accesa programmatic stringul de conexiune din fisierul de configurare trebuie sa folosesc clasa:
a)System.ConfigurationManager
(b)System.Configuration.ConfigurationManager
c)System.Configuration.Manager
d)System.Manager.Configuration
51) Avem secventa: class A{int x; static void f() {x++;}}Ce puteti spune?
a)Daca se da o valoare initiala lui x,e corecta
b)Se compileaza,dar da erori la o eventuala insatntiere
(c)Nu se compileaza
d)E corecta
53) Pt un obiect SqlCommand,care este metoda care obtine un obiect de tip XmlReader din baza de date?
a)ExecuteXml
(b)ExecuteXMLReader
c)ExecuteQuery
d)ExecuteNonQuery
e)ExecuteReader
f)niciuna de mai sus
57) Pentru un obiect de tip DataAdapter ese nevoie de deschidere si inchidere explicta a conexiunii
a)adevarat
(b)fals
60) Trecerea la urmatorul set de date dintr-un obiect SqlDataReader se face cu:
a)Read()
(b)NextResult()
c)nu se poate
63) Am un camp static care trebuie initializat la runtime,iar apoi sa nu poata fi modificat.Cum procedez?
1)o declaram read-only
2)o initializam in constructorul clasei
66) Cum pot afla daca un obiect “o” provine din boxing?
a)if(o is MyClass){/*Boxing*/} else {/*NotBoxing*/}
67) Obtinerea unui camp de tip int dintr-o tabela ASQServer 2005 se face cu:
a)GetString
b)GetInt8
c) GetInt16
(d) GetInt32
e) GetInt64
f)GetDouble
68) Care dintre urmatoarele sunt folosite pentru compilarea codului native o singura data?
a)Normal JIT
(b)Pre-JIT
c)Econo-JIT
71) Ultima instructiune care se apeleaza automat si garantat in cadrul unui bloc using este
a)destructorul
b)constructorul
c)finally
(d)Dispose()
e)Close()
f)Release()
g)apel de garbage collector
h)destructorul static
76) Inchiderea obiectului de tip SqlDataReader va duce la inchiderea automata a obiectului SqlConnection asociat
a)adevarat
b)fals
(c)depinde
78) Setul de reguli pe care orice compilator ce trebuie integrat in .NET le va respecta sunt specificate de catre
(a)CLS
b)IL
c)MSIL
d)BCL
e)CLR
79) Orice cod compilat pentru un limbaj oarecare din .NET este transformat in cod
(a)IL
b)CLR
c)CTS
d)BCL
(e)MSIL
80) Varianta in care se face o precompilare in cod masina pentru tot codul intermediar se numeste
a)Econ-JIT
b)Normal-JIT
(c)Pre-JIT
81) Tipurile commune care se pot specifica pt limbaje diferite din plantforma .NET se defines in
a)CLR
b)BLC
(c)CTS
d)IL
87) Care din urmatoarele constituie declarare si initializare a unui tablou unidimensional de tip intreg
(a)int[] x=new int[]{1,2,3}
b)int x[]=new int[]{1,2,3}
(c)int[] x={1,2,3}
d)int x[]={1,2,3}
89) Doresc sa creez o metoda care sa modifice valorile parametrilor de apel(ce sunt initializati) iar aceste modificari sa fie
vizibile si dup ace s-a revenit din apel.Ce fel de transmitere folosesc?
a)prin valoare
(b)folosind ref
(c)folosind out
92) Un camp de tip string neinitializat va fi initializat la instantierea unui obiect cu:
a)Sirul vid
b)un spatiu
(c)null
d)ramane neinitializat
96) Daca se apeleaza operatorul as pt intantiere de clase care nu se afla in relatie de mostenire,ce se obtine?
a)obiectul aflat in stanga lu as
b)o referinta la clasa aflata in dreapta lui as
(c)null
d)0
e)true sau fals
101) Este posibil ca intr-o metoda sa se prinda o exceptie sis a se arunce din catch un alt tip de exceptie?
(a)Da
b)nu
103) Obtinerea sirului de caractere continut intr-un obiect exceptie se face cu:
(a)Message
b)StackTrace
c)TargetSite
d)Source
104) Un obiect de tip DataAdapter umple cu date un obiect de tipu:
a)Connection
b)Command
c)DataReader
(d)DataSet
108) Daca in urma executiei se obtine un scalar, care este modalitatea cea mai eficienta de obtinere a lui:
a)apel de ExecuteXmlReader()
b)apel de ExecuteReader()
c)apel de ExecuteNonQuerry()
109) Pentru a umple cu date un obiect de tip DataSet se foloseste un obiect de tipul:
a)Command
(b)Adapter
c)DataReader
d)Transaction
111) Pentru reflectarea schimbarilor revenite pe DataSet in baza de date se foloseste medota:
(a)Update()
b)Fill()
c)RunQuerryies()
d)CommitAllChanges()
114) Ce se intampla cand se introduce intr-un dictionary un element cu o cheie care exista deja:
a)se arunca exceptie
(b)se supra scrie elementul existent
c)vechiul element cu aceeasi cheie se pastreaza si se ignora incercarea de suprascriere
115) Cum anume se specifica in clauza Where faptul ca un anumit tip trebuie sa implementeze o interfata:
a)Where T:struct
b)Where T:class
c)Where T:new ()
d)Where T:NameOfBaseClass
(e)Where T:NameOfInterface
117) Care este clasa folosita pentru instantierea unui fir de executie:
a)Thread
(b)ThreadStart
c)Runnable
118) Care este spatial de nume in care se gasesc tipurile de date necesare lucrului cu fire de executie
(a)System.Threading
b)System.Thread
c)System.Runnable
Intrebari PIU
1. Se considera directorul E:\Temp in care se gaseste, printre altele, doar un fisier executabil. Sa se indice
enunturile adevarate referitoare la urmatoarea sectenta de cod:
b. Secventa de cod este corecta, in fereastra de Command Prompt se afiseaza un rand in care se specifica sirul
“Fisierul”, urmat de numele fisierului executabil intre ghilimele
c. Secventa de cod este gresita, deoarece sunt folosite doua semne de ghilimele consecutive
2. Se considera directorul E:\Temp in care se gaseste, printre altele, doar un fisier executabil. Sa se indice
enunturile adevarate referitoare la urmatoarea sectenta de cod:
b. Secventa de cod este corecta, in fereastra de Command Prompt se afiseaza un rand in care se specifica sirul
“Fisierul”, urmat de numele fisierului executabil intre ghilimele
c. Secventa de cod este gresita, deoarece sunt folosite doua semne de ghilimele consecutive
care din urmatoarele secvente de cod este corecta pentru a creste dimensiunea tabloului la 10 elemente?
c. intTabl.Length = 10;
b. accesorul get intoarce o valoare, de exemplu, poate intoarce simplu valoarea campului asociat
proprietatii
c. se defineste doar accesorul get in cazul in care se doreste crearea unei proprietati accesibila doar la citire
a. accesorul set primeste automat un parametru special numit value, care contine atibuita proprietatii
c. se defineste doar accesorul set in cazul in care se doreste crearea unei proprietati accesibila doar la scriere
1
6. Indicati care dintre urmatoarele enunturi referitoare la structuri sunt adevarate: -quiz
1. if (File.Exists(“C:/Demo.txt”))
//...
2. if (File.Exists(@”C:\Demo.txt”))
//...
3. if (File.Exists(“C:\Demo.txt”))
/...
a. 1
b. 3
c. 2
8. Care este prototipul corespunzator punctului de intrare pentru o aplicatie C# la nivel de consola?
b. termenul de literali desemneaza valori fixate, reprezentate intr-un format accesibil omului
c. se poate preciza explicit tipul pentru un literal, daca se adauga un sufix specific
d. literalii C# pot i de rice tip valoric, modul de reprezentare depinzand de tipul sau
a. In cazul unei interfete se pot defini corpurile metodelor, proprietatilor, evenimentelor sau indexarilor necesare
2
11. Care din urmatoarele clase nu pot fi mostenite?
a. Abstract
b. Public
c. Sealed
a. destructori
b. formulare
c. constructori
d. alte clase
e. module
f. structuri
g. constante
a. blocul catch poate intercepta posibile exceptii lansate de program in blocul try
b. blocul finally contine codul care trebuie executat obligatoriu la iesirea dint-un bloc try, indiferent de faptul ca
in blocul try s-a generat sau nu o exceptie
c. ordinea in care se declara blocurile de tip catch este importanta, de la general la particular
14. Indicati enunturile adevarate pentru un obiect instanta a clasei HashTable: -quiz
1. String
2. Double
3. Integer
4. void
a. 1
b. 2
c. 3
d. 4
void Demo();
3
public static void Main()
System.Console.Writeline(“hello”);
void Demo()
a. Secventa de cod este gresita, deoarece in clasa Program, metoda Demo nu are modificatorul de acces
“public”
b. Secventa de cod este corecta, in clasa Program s-a definit corect metoda Demo
c. Secventa de cod nu este corecta, deoarece in interfata nu s-a definit corpul metodei Demo
void Demo()
//...
} -----quiz
a. un bloc try trebuie sa fie urmat obligatoriu de unul sau mai multe blocuri catch
b. la generarea unei exceptii, controlul executiei programului este transmis unuia dintre blocurile catch ce urmeaza
blocul try, in functie de tipul exceptiei produse
c. blocul de cod care poate genera o exceptie trebuie impachetat intr-un bloc try
4
c. la tratarea exceptiilor programatorul trebuie sa intoarca un cod de eroare corespunzator
d. toate exceptiile sunt organizate intr-i ierarhie si sunt derivate din clasa predefinita Exception
a. este obligatoriu ca o indexare sa lucreze cu un tablou, nu numai sa ofere o functionalitate care se apropie de cea a
tablourilor, din punct de vedere al utilizatorilor
c. pentru utilizarea pointerilor, cuvantul cheie unsafe trebuie utilizat atat la definirea unei metode ce utilizeaza
pointeri, cat si la apelul acesteia
22. Care din urmatoarele secvente reprezinta o declaratie valida pentru un nume de fisier --quiz
a. 5810
b. 5 5 8
c. 400 8 10
d. 0 5 8
e. 400 5 8
f. 40810
g. 400 40 10
c. o variabila de tip valoare nu poate fi null (la o poza sunt pe dos, verifica)
5
b. Pentru declararea interfetelor se foloseste cuvantul cheie “interface”
b. o variabila de tip referinta daca este null, indica faptul ca nu refera sau pointeaza la nici un obiect
c. o variabila de tip referinta, daca nu este null, pointeaza la un obiect de tipul specificat si care este alocat deja in
heap
//...
class Program
Complex c;
Console.Wtile(c.afis());
} ----quiz
c. va genera o exceptie
b. spatiul de nume realizeaza o grupare semantica de elemente, cum ar fi clase sau alte spatii de nume
d. prin utilizarea sptiilor de nume nu se poate asigura unicitatea numele utilizate intr-un anumit program sau
proiect
6
b. Se afiseaza valoarea False
d. Se afiseaza valoarea 0
e. Se afiseaza valoarea 1
if(a) {
//secventa de cod
a. Da
b. Nu
class Program
b. va genera o exceptie
32. Se poate supraincarca un operator in limbajul C#, prin intermediul unei metode nestatice?
a. Nu
b. Da
iVal1 +=2;
7
static void Main(string[] args)
int il
RefTest(ref i);
Console.Writeline(i);
c. va genera o exceptie
int [][]jnumere = new int[][] {new int[]{1, 3, 4}, new int[]{2, 4, 6, 8, 10}};
System.Console.WriteLine (jnumere.Length);
a. Se afiseaza valoarea 3
b. Se afiseaza valoarea 8
d. Se afiseaza valoarea 5
e. Nu se executa nimic. Se genereaza o eroare de compilare, deoarece declararea tabloului nu respecta sintaxa
C#
a. int[,]numbers1;
b. int v[][];
c. int [2]v;
d. int []v;
e. int v[2];
a. int []v;
b. int [,]numbers1;
c. intv[2];
d. int v[][];
e. int [2]v;
a. proprietatea length
b. proprietatea Lengths
c. proprietatea Length
d. proprietatea Size
e. metoda Length()
f. metoda length()
g. metoda size()
38. Care din urmatoarele enunturi sunt corecte relative la secventa de cod de mai jos:
8
int [ , ] intTabl = {{7, 1, 3}, {2, 9, 6}};
d. Exista clase statice si pot contine atat membri statici cat si nestatici
40. Indicati care din enunturile referitoare la metoda Main sunt adevarate:
d. este declarata static: deci, pentru ca metoda sa fie apelata nu este necesata instantierea vreunei clase
b. operatia prin care pe baza unui obiect se obtine o clasa se numeste instantiere
a[0]=1;
a[1]=2;
a[2]=3;
43. Se poate supraincarca un operator in limbajul C#, prin intermediul unei metode nestatice?
a. Nu
b. Da
44. Se permite definirea, in cadrul unei structuri, a unui constructor fara lista de parametri?
a. Nu
b. Da
a. int v[2];
b. int [,]numbers1;
9
c. int[]v;
d. int[2]v;
e. int[][]v;
a. literalii “copie la indigo” sunt afisati exact la fel cum sunt introdusi in textul programului
d. literalii de tip “copie la indigo” sunt reprezentati sub forma unui sir de caractere ce incep cu caracterul „@”
a. Connection
b. DataTable
c. Command
d. DataSet
a. pentru a implementa o interfata, numele interfetei trebuie sa fie specificat dupa numele clasei, la fel cum este
specificata o clasa de baza
b. toate metodele interfetelor sunt implicit public, dar se pot aplica modificatori de acces
c. o clasa care implementeaza o interfata trebuie sa defineasca toate metodele care se regasesc in interfata
respectiva, nu doar anumite parti ale interfetei
d. in cazul in care o clasa mosteneste o clasa de baza si, in acelasi timp, implementeaza una sau mai multe interfete,
numele clasei de baza trebuie sa fie ultimul in lista de entitati separate prin virgule
a. Fiecare fir de executie poate contine unul sau mai multe procese
b. Fiecare aplicatie ce ruleaza in cadrul unui sistem de operare este reprezentata de un proces
d. Fiecare proces poate contine unul sau mai multe fire de executie
a. un data provider reprezinta un set clase ADO.NET ce permit accesul la tip de baza de date, conectarea la baza de
date, executia de comenzi SQL si preluarea rezultatelor comenzilor
10
b. la utilizarea unei anumite surse de date pentru o aplicatie este important sa se foloseasca provider-ul potrivit
c. nu exista provider nativ .NET care sa suporte baze de date pentru Oracle si SQL Server
b. o interfata este un tip de referinta, care nu poate fi instantiat, ci contine doar o colectie de declaratii de metode
b. depanarea unui dll se poate realiza considerand doua proiecte intro solutie visual studio un proiect va fi DLL-ul iar
celalalt proiect va fi executabil
c. depanare unui dll se poate realiza considerand un proiect executabil care va contine namespace ul dll ului cu
toate clasele aferente si in plus o clasa cu o metoda Main
57. Care din urmatoarele secvente de instruciuni sunt corecte si valide int
iInteger = 1;
long ILongInteger = 2;
b. instructiunea 1
c. instructiunea 4
d. instructiunea 2
11
c. este utilizat pentru a stabili o conexiune la o baza de date
c. orientate pe continut
a. framework-ul .net nu permite utilizarea spatiilor de nume definite de programator, ci doar predefinite
b. declaratia unui spatiu de nume consta in utilizarea cuvantului cheie namespace, urmat de numele spatiului
de nume si corp
c. se poate crea un spatiu de nume in cadrul altui spatiu de nume, creandu-se astfel sptii de nume imbricate
b. tipul de date string este utiizat pentru a defini un set de caractere unicode
case ‘1’:
case ‘2’:
a. DA
<Angajat AngajatID="2">
<Prenume>Maria</Prenume>
<Nume>Cusnir</Nume>
<Salar>50000</Salar>
</Angajati>
12
b. Nu, deoarce nu este inchis tagul
64. Care din urmatoarele elemente reprezinta componente ale cadrului de lucru .NET?
1. Aplicatii ASP.NET
2. CLR
4. Aplicatii WinForm
5. Servicii Windows
a. 4
b. 2
c. 3
d. 5
e. 1
int nVal;
strVal = Console.ReadLine();
if(Int32.TryParse(strVal, out nVal))
else
c. secventa de cod este corecta, se afiseaza succesorul numarului introdus de utilizator, daca acest numar este
intreg, altfel se afiseaza un mesaj explicativ
a. Daca declaratiile a doua metode coincid, ele pot fi apelate simultan prin acelasi obiect delegate
...
13
a. exceptie la incercarea de a adauga un element in colectie cu aceeasi cheie cu a unuia existent
d. eroare, nu se pot adauga noi elemente intr-o colectie folosind metoda Add
68. Sa se indice raspunsurile corecte pentru completarea urmatorului enunt, astfel incat acesta sa fie adevarat:
Variabilele de tip pointer sunt utilizate pentru a retine ... unei variabile
a. valoarea
b. numele
d. adresa
69. C# nu permite
a. mostenire
b. mostenire multipla
c. abstractizare
d. polimorfism
71. Ce instructiune poate fi folosita pentru a obtine numarul de elemente stocate in tabloul intTabl: int[]
intTabl = {1, 2, 3};
b. intTabl.GetMax;
c. intTab;.Highest(0);
d. intTabl.GetUpperBound(0); - returneaza 2
ArrayList arrayZile = new ArrayList(new string*+ ,“Luni”, “Marti”, “Miercuri”, “Joi”, “Vineri”-);
arrayZile*5+=”Sambata”;
a. eroare, elementele unei colectii de tip ArrayList nu pot fi accesate prin indexare
b. eroare, nu se poate initializa un obiect de tip ArrayList pe baza unui tablou de siruri de caractere
d. generarea unei exceptii, se incearca accesarea unui element pentru care nu s-a alocat memorie
...
14
Hashtable zileSaptamana = new Hashtable();
zileSaptamana.Add(“Duminica”, 1);
zileSaptamana.Add(“Luni”, 1);
c. eroare, nu se pot adauga noi elemente intr-o colectie folosind metoda Add
b. Daca intr-un spatiu de nume a fost definita o clasa care implementeaza o interfata, nu se mai poate defini o
alta clasa care implementeza respectiva interfata
e. O clasa care implementeaza o interfata poate implementa explicit membrii interfetei respective
a. cuvantul cheie checked este utilizat pentru a verifica daca o expresie produce o depasire
b. cuvantul cheie unchecked este utilizat pentru a ignora o eventuala depasire produsa de evaluarea unei expresii
c. in cazul utilizarii cuvantului cheie checked, rezultatul obtinut in urma evaluarii unei expresii va fi trunchiat
astfel incat sa se incadreze in limitele corespunzatoare tipului stabilit de expresie
76. Membrii unei echipe care lucreaza pentru proiectarea interfetelor utilizator trebuie sa aiba competente in:
a. Design grafic
b. Ergonomie
c. Sociologie
d. Psihologie
e. Inginerie soft
2. using System.Collections;
3. using System.Windows.Forms;
a. Nicio varianta nu este corecta, deoarece spatiile de nume sunt introduse prin “used”
d. toate
15
79. Secventa de cod: Class
Complex{ //...
Return „nr.complex”;
}}
Class Program{
Complex c; Console.Write(c.afis());
80.Care dintre următoarele variante se folosesc pentru declararea unui array în c#?
45
Toate(double ,decimal,int32)
String
Toate raspunsurile:
86. Care dintre următoarele afirmații este corectă pentru un identificator în c#?
Ambele variante: primul character nu poate fi cifra,incepe cu o litera si contine litere,cifre si underline
Da
46
88. Care dintre următoarele conversii sunt folosite in c#, pentru conversia în tipul boolean?
ToBoolean
ToString
90. Operatorul new aloca memorie pentru un nou obiect si il initializeaza cu ajutorul unui constructor
Adevarat
91. Operatorul NOT, !, necesita doar un singur operand, el fiind un operator unar.
Adevarat
92. Cate erori de compilare va genera urmatorul cod?
Definirea mai multor metode cu acelasi nume, dar cu parametri diferiti se numeste
1. Overloading
1. Nu se compileaza pentru ca o variabila declarata cu ajutorul cuvantului cheie var, trebuie initializata.
1. False.
O variabila declarata private poate fi citita dintr-o instanta a obiectului unde este declarata:
1. Poate fi citita folosind Reflection
In declararea unui spatiu de nume pot exista modificatori de acces sau/si atribute?
1. Nu.
Tipul enum este de tip referinta.
Fals
Un tip nullable inseamna ca pe langa valorile implicite pe care le are, el va avea si valoarea null.
Adevarat
49
Un byte poate avea valori de la 0 la 255.
1. Adevarat.
2. Fals. - Given
Pot exista mai multe instructiuni catch asociate unui try.
1. Adevarat.
2. False. - Given
Daca se foloseste operatorul as pentru o conversie, in cazul in care aceasta nu reuseste, va fi:
1. Generarea unei exceptii. - Given
2. Null.
53
Urmatorul cod va afisa:
1. pozitiv.
2. negativ.
3. Operatorul ?: nu este bine folosit, va genera eroare la compilare. - Given
Folosind generics in cadrul tipurilor valorice, se elimina operatia de boxing.
1. Adevarat. - Given
2. Fals.
Pentru folosirea unei proprietati este nevoie de alocarea unei locatii de memorie?
1. Da, pe stiva.
2. Nu, nu este nevoie de alocarea unei locatii de memorie.
3. Da, daca proprietatea este de tip referinta.
4. Da, daca proprietatea are doar get.
In limbajul C# nu se poate utiliza un pointer.
1. Adevarat. - Given
2. Fals.
3. Se poate folosi pointer, dar intr-un context unsafe.
Urmatoarele secvente de cod sunt echivalente:
1. Adevarat.
2. Fals. - Given
O clasa care nu este abstracta si care mosteneste o clasa abstracta trebuie sa includa toate implementarile
pentru membri abstracti.
1. Adevarat.
2. Fals. - Given
Urmatorul cod:
1. Va genera eroare la compilare. - Given
2. Va genera exceptie la runtime.
Blocul finally va fi executat chiar daca nu va fi prinsa nici o exceptie?
1. Da.
2. Nu, executia lui depinde de tipul exceptiei.
3. Nu, executia lui depinde de numarul de exceptii.
4. C# nu contine acest cuvant cheie.
Un cast este necesar la conversia intre tipuri incompatibile sau cand conversia are loc prin restrangere.
1. Adevarat. - Given
2. Fals.
In ce versiune a limbajului C# a aparut cuvantul cheie var?
1. 2.0
2. 3.0
Pentru a formata un string se foloseste urmatoarea formula:
1. string str = "%s locuieste in %s", "Ion", "Arad"; - Given
2. string str = "Ion" + locuieste + "Arad";
3. Nu exista o metoda de formatare a string-urilor in c#
4. string str = string.Format("{0} locuieste in {1}", "Ion", "Arad");
Urmatorul cod nu se compileaza pentru ca:
54
1. Nu se poate mosteni o clasa statica.
2. Declararea indexului pe interfata I este incorecta. - Given
Fie clasa Student derivata din clasa Person. Una dintre afirmatiile urmatoare este falsa:
1. Clasa Student are acces la toate variabilele public sau protected din clasa de baza. - Given
2. Clasa Student are acces la toate metodele public sau protected din clasa de baza.
3. In clsa Student se pot suprascrie toate metodele din clasa Person.
4. In clsa Student se pot suprascrie metodele declarate virtual in clasa Person.
Care nu este o caracteristica a limbajului C#?
1. Suportul pentru tratarea erorilor.
2. Variabile globale.
3. Garbage collection.
4. Tipuri de date pentru aplicatii financiare.
string an = 1 + 9 + "9" + 9; va fi evaluat la:
1. 1999
2. 1998
3. 1099
4. 28
Pentru a folosi in aplicatia curenta cod definit intr-un fisier dll (managed code) trebuie sa:
1. Copiem dll-ul respectiv in folderul proiectului curent. - Given
2. Nu se poate folosi cod scris intr-un dll, codul compilat este inaccesibil
3. Creem o referinta la dll-ul repsectiv
4. dll-ul trebuie decompilat iar codul rezultat se copiaza in proiectul unde trebuie folosit.
O proprietate poate fi transmisa ca parametru ref sau out?
1. Da.
2. Nu.
Care dintre urmatoarele afirmatii sunt adevarate despre o variabila locala:
1. Poate fi accesata de orice metoda definita in clasa.
2. Este accesibila numai in interiorul functiei unde este declarata.
3. C# nu accepta variabile locale.
4. Daca este declarata publica poate fi accesata de oricine acceseaza o instanta a obiectului unde ea apare. - Given
Daca se foloseste operatorul as pentru o conversie, in cazul in care aceasta nu reuseste, va fi:
1. Generarea unei exceptii. - Given
2. Null.
In C# exista doar mostenirea simpla (o clasa derivata poate mosteni o singura clasa de baza).
1. Adevarat. - Given
2. Fals.
Daca se foloseste operatorul as pentru o conversie, in cazul in care aceasta nu reuseste, va fi:
1. Generarea unei exceptii. - Given
55
2. Null.
Ce va afisa urmatorul cod?
1. True.
2. False. - Given
string an = 1 + 9 + "9" + 9; va fi evaluat la:
1. 1999
2. 1998
3. 1099
4. 28
O proprietate poate fi transmisa ca parametru ref sau out?
1. Da.
2. Nu.
Cate erori de compilare va genera urmatorul cod?
1. 0. - Given
2. 1.
3. 2.
Membrul clasei Test este de tipul MyClass din spatiul de nume:
1. Outer - Given
2. Inner
Care este rolul cuvantului cheie namespace?
1. Cuvantul cheie namespace nu exista in C#. - Given
2. Evita conflictele de nume prin organizarea codului..
3. Este folosit in declararea unei clase.
4. Este folosit in tratarea exceptiilor.
Care nu este o caracteristica a limbajului C#?
1. Suportul pentru tratarea erorilor.
2. Variabile globale.
3. Garbage collection.
4. Tipuri de date pentru aplicatii financiare.
Un byte poate avea valori de la 0 la 255.
1. Adevarat.
2. Fals. - Given
Una dintre liniile de mai jos nu este un comentariu. Care?
1. // var a = 5; - Given
2. /* int age = 20; */
3. <!-- int name = "Ion" -->
4. // /** comentariu **/
Marimea unui int este de 32 de biti.
1. Adevarat.
2. Fals. - Given
Urmatorul cod va afisa:
1. pozitiv.
2. negativ.
56
3. Operatorul ?: nu este bine folosit, va genera eroare la compilare. - Given
Un cast este necesar la conversia intre tipuri incompatibile sau cand conversia are loc prin restrangere.
1. Adevarat. - Given
2. Fals.
Operatorul is nu poate fi suprascris.
1. Adevarat. - Given
2. Fals.
Cate erori de compilare va genera urmatorul cod?
1. 0. - Given
2. 1.
3. 2.
Un object initializer:
1. permite constructia si initializarea intr-un mod usor si contine valorile care vor fi atribuite membrilor noului obiect creat.
2. nu se recomanda folosirea acestuia. - Given
3. nu exista in C#.
4. este caracteristic lui Garbage Collector.
Poate fi instantiata o clasa abstracta?
1. Da. - Given
2. Nu.
Care dintre clasele urmatoare este specializata in lucrul cu string-uri:
1. List - Given
2. StringFormater
3. StringBuilder
4. ArrayList
O colectie poate fi parcursa folosind foreach daca:
1. Daca e colectie, poate fi parcursa cu foreach - Given
2. Implementeaza urmatorii membri: GetEnumerator, MoveNext, Reset si Current
3. Numai colectiile care deriva dintr-o clasa colectie poate fi parcursa cu foreach
4. foreach nu este specific c#.
Valoarea constantei SecondsPerWeek:
1. Va fi cunoscuta la runtime. - Given
2. Este cunoscuta in momentul compilarii.
O clasa poate implementa:
1. Un numar infinit de interfete.
2. O singura interfata. - Given
In ce versiune a limbajului a fost introdus cuvantul cheie dynamic?
1. 2.0 - Given
2. 3.0
3. 4.0
4. dynamic nu exista in C#.
Tipurile anonime trebuie declarate cu ajutorul unui object initializer.
1. Adevarat.
2. Fals. - Given
57
Urmatorul cod va afisa:
1. False.
2. True. - Given
In interiorul unei clase se pot defini mai multe metode cu acelasi nume daca:
1. au parametrii de tipuri diferite
2. returneaza tipuri diferite de date
3. nu se pot defini doua metode cu acelasi nume
4. se pot defini, insa trebuiesc marcate cu atrinutul "Override" - Given
Conceptul de generics permite un model de programare strongly typed.
1. Adevarat. - Given
2. Fals.
Urmatorul cod va afisa:
1. true, false. - Given
2. false, false.
3. true, true.
Pentru a folosi in aplicatia curenta cod definit intr-un fisier dll (managed code) trebuie sa:
1. Copiem dll-ul respectiv in folderul proiectului curent. - Given
2. Nu se poate folosi cod scris intr-un dll, codul compilat este inaccesibil
3. Creem o referinta la dll-ul repsectiv
4. dll-ul trebuie decompilat iar codul rezultat se copiaza in proiectul unde trebuie folosit.
Care dintre urmatoarele linii genereaza o eroare la compilare:
1. Console.WriteLine("Numar = {0}", 12); - Given
2. int total = 2.3;
3. Int32 age = new Int16();
4. //string m = 5;
Exista o legatura intre evenimente si delegari?
1. Nu.
2. Da, evenimentele necesita utilizarea delegarilor.
3. Notiunea delegare nu exista in C#.
4. Notiunea de eveniment nu exista in C#.
Urmatorul cod nu se compileaza pentru ca:
1. Clasa MyClass nu poate avea un membru static. - Given
2. this nu se aplica unui membru de instanta.
3. this nu se aplica intr-o metoda statica.
Urmatorul cod va afisa:
1. False.
2. True. - Given
Care dintre urmatoarele linii genereaza o eroare la compilare:
1. Console.WriteLine("Numar = {0}", 12); - Given
2. int total = 2.3;
3. Int32 age = new Int16();
4. //string m = 5;
O interfata poate fi implementata de:
1. O singura clasa. - Given
58
2. Un numar infinit de clase.
3. Un numar infinit de interfete.
Urmatorul cod genereaza o eroare de compilare. Rezolvarea consta in:
1. La declararea clasei Concrete, se implementeaza mai intai interfata si apoi se mosteneste clasa de baza. - Given
2. Metoda Method din clasa abstracta Template trebuie sa contina modificatorul de acces public.
3. Proprietatea Prop din interfata I trebuie sa aiba modificatorul de acces public.
string an = 1 + 9 + "9" + 9; va fi evaluat la:
1. 1999
2. 1998
3. 1099
4. 28
Folosind generics in cadrul tipurilor valorice, se elimina operatia de boxing.
1. Adevarat. - Given
2. Fals.
Cate tipuri de constante exista in C#?
1. Un singur tip.
2. Doua tipuri: constante la compilare si constante la executie.
3. Nu este necesara o clasificare a constantelor in C#. - Given
O clasa poate implementa:
1. Un numar infinit de interfete.
2. O singura interfata. - Given
Definirea mai multor metode cu acelasi nume, dar cu parametri diferiti se numeste:
1. Loading
2. Overloading
3. Static - Given
4. Overriding
Metodele abstracte sunt permise doar in clasele abstracte?
1. Da. - Given
2. Nu.
Urmatorul cod va afisa:
1. pozitiv.
2. negativ.
3. Operatorul ?: nu este bine folosit, va genera eroare la compilare. - Given
In C# exista doua tipuri de egalitate: egalitatea pentru referinta si egalitate pentru valoare.
1. Adevarat.
2. Fals. - Given
Care dintre urmatoarele afirmatii sunt adevarate despre o variabila locala:
1. Poate fi accesata de orice metoda definita in clasa.
2. Este accesibila numai in interiorul functiei unde este declarata.
3. C# nu accepta variabile locale.
4. Daca este declarata publica poate fi accesata de oricine acceseaza o instanta a obiectului unde ea apare. - Given
Declararea, instantierea si initializarea unui vector cu 4 elemente, intr-o singura instructiune, se face astfel:
1. int[] colectie = new int[] {1,2,3,4}; - Given
59
2. int colectie[] = new int[]{1,2,3,4};
3. int[] colectie = new int[1,2,3,4];
4. int colectie [] = new int[4]{1,2,3,4};
Cuvantul cheie "this" se refera la:
1. Numele clasei. - Given
2. Obiectele folosite in context.
3. Instanta curenta.
4. Orice variabila statica interna.
Care nu este o caracteristica a limbajului C#?
1. Suportul pentru tratarea erorilor.
2. Variabile globale.
3. Garbage collection.
4. Tipuri de date pentru aplicatii financiare.
Cuvantul cheie checked:
1. Permite "overflow checking" pentru tipurile de date intregi si va genera exceptie.
2. Nu exista in C#.
3. Permite "overflow checked" atat pentru tipurile de date intregi cat si pentru cele in virgula mobila si va genera exceptie. -
Given
Care din urmatoarele nu reprezinta o colectie in C#?
1. Structuri.
2. Vectori.
3. Dictionare.
4. Enumerarile.
Cuvantul cheie using poate fi folosit ca:
1. Ca o directiva, in lucrul cu spatiile de nume.
2. Ca o instructiune, definind un domeniu la sfarsitul caruia obiectul va fi distrus.
3. Ambele variante de mai sus.
4. In C# 4.0 folosirea acestuia nu este recomandata.
Cate tipuri de date sunt in limbajul c#?
1. Foarte multe.
2. 2 tipuri: tip valoare si tip referinta
3. Nu exista un tip specific
4. 3 tipuri: tip object, tip numar si tip clasa
Tipurile anonime trebuie declarate cu ajutorul unui object initializer.
1. Adevarat.
2. Fals. - Given
Este C# un limbaj type-safe?
1. Da.
2. Nu. - Given
Este posibil ca intr-o interfata sa fie declara un constructor al unei clase care va implementa interfata respectiva?
1. Da. - Given
2. Nu.
Exista o legatura intre evenimente si delegari?
1. Nu.
60
2. Da, evenimentele necesita utilizarea delegarilor.
3. Notiunea delegare nu exista in C#.
4. Notiunea de eveniment nu exista in C#.
Un object initializer:
1. permite constructia si initializarea intr-un mod usor si contine valorile care vor fi atribuite membrilor noului obiect creat.
2. nu se recomanda folosirea acestuia. - Given
3. nu exista in C#.
4. este caracteristic lui Garbage Collector.
O colectie poate fi parcursa folosind foreach daca:
1. Daca e colectie, poate fi parcursa cu foreach - Given
2. Implementeaza urmatorii membri: GetEnumerator, MoveNext, Reset si Current
3. Numai colectiile care deriva dintr-o clasa colectie poate fi parcursa cu foreach
4. foreach nu este specific c#.
Urmatorul cod:
1. Nu se compileaza.
2. Este corect pentru ca se declara un vector cu 3 dimensiuni.
3. Este corect pentru ca se declara un vector care va contine 4 elemente.
4. Nu este corect pentru ca la declararea vectorului trebuie realizata si initializarea lui.
Urmatorul cod va afisa:
1. true, false. - Given
2. false, false.
3. true, true.
Care este rolul cuvantului cheie break?
1. Intrerupe o iteratie sau un switch.
61