Sunteți pe pagina 1din 32

5/13/2018 GrileJava-slidepdf.

com

Test 1

1) Este limbajul JAVA dependent la platforma?


a. da, pt ca va crea o masina virtuala JAVA care are drept scop traducerea
instructiunilor unui byte code in instructiuni masina pentru sistemul de operare

curent;
 b. nu, pentru ca este imposibil ca acelasi program JAVA sa fie executat pe diferite sisteme d
operare fara sa fie modificat

2) Cum putem initializa pointerii in JAVA?


a. folosind operatorul de adresa &
 b. folosind operatorul de diferentiere *
c. nu exista pointeri in java

3) Ce tipuri de aplicatii JAVA exista?


a. aplicatii de sine statatoare

 b.
c. baze de date
aplicatii care se executa pe server sau client
d. clienturi

4) Cum se poate executa appletul intitulat UnApplet.class?


a. folosind comanda java UnApplet
b. utilizand comanda appletviewer si un fisier HTML, care contine un tag de forma
<applet code=”UnApplet.class:..>
c. utilizand comanda javac;

5) Cu ce comanda putem dezasambla un cod binary JAVA?

a.
 b. java
javac–p
c. javap
d. rmic

Test 2

1) Fie urmatoarea secventa de cod JAVA:


float a=2;
float b=1.3;

Care afirmatie este adevarata?


a. Instructiunile 1 si 2 sunt corecte.
b. Instructiunea 1 este corecta, instructiunea 2 este incorecta.
c. Instructiunile 1 si 2 sunt incorecte.

http://slidepdf.com/reader/full/grile-java 1/32
5/13/2018 GrileJava-slidepdf.com

2) Fie urmatoarea declaratie JAVA:


public private int h;
Care afirmatie este adevarata?
a. variabila h va fi accesata in mod public, deoarece se ia in considerare primul modificator d
acces;

 b. Variabila
de acces; h va fi accesata in mod private, deoarece se ia in considerare ultimul modificato
c. Va fi o eroare la compilare, deoarece o variabila nu poate fi in acceasi timp accesata
public si private;

3) Fie urmatorul program JAVA:


int x=0;
if (Double.isInfinite(2/x) )
system.out.println(“Infinit”);
else
System.out.println(“2/0”);

Ce puteti spune despre aceasta?


a. eroare la compilare din cauza impartirii la 0;
 b. Eroare la executia din cauza impartirii la 0(se arunca o exceptie Arithmetic Exceptio
c. Programul este correct si va afisa infinit;
d. Programul este correct si va afisa NaN.

4) La ce valoare se va evalua urmatoarea expresie?


2f<3d?+0.0:5<7?0.3:21

Ce va afisa contine
a)Expresia aceasta erori
executie?
sintactice;
 b)Unele conversii trebuie realizate explicit;
c)Se va evalua la 0.0;
d)Se va evalua la 0.3;

5) Fie urmatorul program JAVA:


String s1=”anul”+200+2, s2=200+2+”anul”;
System out.println(“s1=”+s1+”, s2=”+s2);

Ce va afisa executia sa?


a)s1=anul202, s2=202anul
b)s1=anul2002, s2=202anul 
c)s1=anul202, s2=2002anul
d)s1=anul2002, s2=2002anul
e)Eroare la executie: este nesesara o conversie explicita!

6) Fie urmatorul subprogram Java:

http://slidepdf.com/reader/full/grile-java 2/32
5/13/2018 GrileJava-slidepdf.com

int as=3, bs=2, cs=4;


System.out.print(((as < bs++) & (cs++ < bs)) + " ");
System.out.println(as + " " + bs + " " + cs);
System.out.print(((as < bs++) && (os++ < bs++)) + " ");
System.out.println(as + " " + bs + " " + cs);

Ce se poate spune despre acesta?


a) Eroare la compilare: nu se poate aduna o valoare booleana cu un String;
 b) Subprogramul se compileaza si la execujie afiseaza:
false 3 3 5 false 3 4 4
c) Subprogramul se compileaza si la executie afiseaza:
false 3 3 5 false 3 4 5
d) Subprogramul se compileaza si la execujie afiseaza:
false 3 3 5 false 3 5 6

7) Fie urmatorul program Java:

 public
 public class
static Asignare {
void main(String args[])
{
int a = 3;
int b = (a = 2) * a;
int c = b * (b = 5) ;
System.out.println("a = " + a + ", b = " + b + ", c = " + c);
}}

Ce va afisa acesta la executie?


a) a = 2, b = 4, c = 20

b)
c) a = 2,
a = 2, bb == 5,
5, cc == 25
20
d) a = 3, b = 6, c = 30

8) Fie urmatorul subprogram Java:


System.out.println{(1<2) ?5: (3<4)) + " ");

Ce se poate spune despre acesta?


a) Eroare la compilare: nu se poate converti o valoare booleana la un int.
 b) Subprogramul se compileaza si la execujie afiseaza 5.
c) Subprogramul se compileaza si la executie afiseaza 37.
d)Subprogramul se compileaza si la executie afiseaza true
e) Nici una un este corecta

9) Fie urmatorul subprogram Java:

http://slidepdf.com/reader/full/grile-java 3/32
5/13/2018 GrileJava-slidepdf.com

double d = 2.95;
int i = 4;
System.out.println( + + d>i?d: i);

Ce se poate spune despre acesta?

a) Eroare
 b) la compilare:
Subprogramul nu putemsiconverti
se compileaza o valoare
la executie double
afiseaza 3.95.la int.
c) Subprogramul se compileaza si la executie
afiseaza 4.
d) Subprogramul se compileaza si la executie afiseaza 4.0

10) Fie urmatorul apel Java:


System.out.println(1 < 2 < 3);

Ce se poate spune despre acesta?


a) Eroare la compilare.

 b) Eroare se
c) Apelul la executie.
compileaza si la executie afiseaza true.
d) Apelul se compileaza si la executie afiseaza false.

11) Fie urmatorul program Java:


 public class Apel
{
static int f (short a) {return a*2;
}
 public static void main(String[] args
{

}} System.out.println(f(3));

Ce se poate spune despre acesta?


a) Eroare la compilare: nu exista o definitie a metodei f () cu parametrul int.
 b) Eroare la compilare: metoda f () nu intoarce o valoare de tip short.
c) Programul se compileaza si la execute afiseaza 6.

12) Fie urmatorul subprogram Java:


1 byte b = -7 >>> 1;
System.out.println (b);

Ce se poate spune despre acesta?


a) Eroare la compilare.
 b) Eroare la executie.
c) Subprogramul se compileaza si la executie afiseaza -3.
d) Subprogramul se compileaza si la executie afiseaza -4.

13) Fie urmatorul subprogram Java:

http://slidepdf.com/reader/full/grile-java 4/32
5/13/2018 GrileJava-slidepdf.com

  byte b = 7 >>> 1;
System.out.println (b);

Ce se poate spune despre acesta?

a) Eroare
 b) Eroare la
la compilare.
executie.
c) Subprogramul se compileaza si la executie afiseaza 3.
d) Subprogramul se compileaza si la executie afiseaza -3.

14) Fie urmatorul program Java:


 public class Program
{
static int x = 6;
 public static void main(String[] args)
{

System.out.print("x
int x = (x = 3) * x; = " + x);
System.out.print(", x = " + x) ;
}

Ce se poate spune despre acesta?


a) Eroare la compilare: variabila x este declarata de doua ori.
 b) Programul se compileaza si la executie afiseaza x = 6, x = 3.
c) Programul se compileaza si la executie afiseaza x = 6, x = 9.
d) Programul se compileaza si la execute afiseaza x = 6, x = 18

15) Fie urmatorul program Java:


 public class Program (
 public static void main(String[] args) {
float min = Float.NEGATIVE_INFINITY;
float max = Float.POSITIVE INFINITY;
System.out .println ( (int.) (char) min + " " + (int) (char) max);

Ce se poate spune despre acesta?


a) Eroare la compilare: conversii imposibile.
 b) Programul se compileaza si la executie afiseaza 0 255.

c)
d) Programul secompileaza
Programul se compileazasisilalaexecutie
executieafiseaza
afiseaza 0 65535.
0 -1.

16) Fie urmatorul subprogram Java:

http://slidepdf.com/reader/full/grile-java 5/32
5/13/2018 GrileJava-slidepdf.com

int a = 3;
if (++a < 4)
System.out.printIn (a); else System.out.println(a);

Ce se poate
a) Eroare la spune despre acesta?
compilare.
 b) Subprogramul se compileaza si la executie afiseaza 4.
c) Subprogramul se compileaza si la executie afiseaza 5.
d) Subprogramul se compileaza si la executie nu afiseaza nimic.

17) Fie urmatorul program Java:

 public class Program1
{
static void f (int k)
{
switch (k)
{
default : System.out .print (" i ");
 break ;
case 1 : System.out .print (" 1 ");
 break ;
case 2 :
case 3 : System.out.print("23 ");
 break ;
case 4 :
case 5: System.out.print(" 45 ");

} }

 public static void main(String[] args)
{
for (int i = 0; i < 6; i++)
f (i);
}
}

Ce se poate spune despre acesta?


a) Eroare la compilare.
b) Programul se compileaza si la executie afiseaza i 1 23 23 45 45.
c) Programul se compileaza si la executie afiseaza i 1 23 45.
d) Programul se compileaza si la executie afiseaza i 1 23 23 45 45 i.

18) Fie urmatorul subprogram Java:

http://slidepdf.com/reader/full/grile-java 6/32
5/13/2018 GrileJava-slidepdf.com

int i = 1, suma = 0;
for ( ; ; ) {
suma += i++;

if
} (i > 5) break ;
System.out.print( suma );

Ce se poate spune despre acesta?


a) Eroare la compilare: lipsesc partile componente ale lui for.
 b) Subprogramul se compileaza si la executie afiseaza 0.
c) Subprogramul se compileaza si la executie afiseaza 10.
d) Subprogramul se compileaza si la executie afiseaza 15.

19) Fie urmatorul program Java:

 public class Program {


 public static void main(String args[]) {
int v[] = {2, 4, -2, 8, -2}, i = 0, suma = 0;
for (i = 0; i < 10; ++i) {
if (v[i] < 0) continue;
suma += v[i];}
System.out.println("suma = " + suma);}}
Ce se poate spune despre acesta?
a) Eroare la compilare.
 b) Programul se compileaza si la executie afiseaza 0.

c)
d) Programul
Programul se
se compileaza
compileaza si
si la
la executie afiseaza-4.
execute afiseaza 14.
 Nici una + arunca exceptie

20) Fie urmatorul program Java:

 public class Subiecte {


 public static void main(String args[]) {
float f = 4.50;
System.out.println( f) ; } }

Ce se poatelaspune
a) Eroare despre nu
compilare: acesta?
se poate converti implicit 4.50 la float.
 b) Programul se compileaza si la executie afiseaza 4.5.
c) Programul se compileaza si la executie afiseaza 4.50.
d) Programul se compileaza si la executie afiseaza 4.5000000.

Test 3

http://slidepdf.com/reader/full/grile-java 7/32
5/13/2018 GrileJava-slidepdf.com

1) Fie urmatorul program Java:

class CI { int x = 1;
C1 (){

System.out.print("x
class C2 extends CI ={ " + x);}}
int y = 3;
C2 ( int y )
this.y = y; }}
 public class Test {
 public static void main(String[] args) {
C2 obiect = new C2();
System.out.println (“ y = “ + obiect.y); } }

Ce puteti spune despre acesta?

a) Eroare
 b) la compilare:
Programul nulaexista
este corect si constructor
executie va afisa: yfara
= 3.argumente.
c) Programul este corect si la executie va afisa: x = 1 y = 3.

2) Fie urmatorul program Java:

class C0 { int x = 1; }class C1 {


int y = 2;}
class C2 extends C0, C1 { int z = 3;}
  public class TestDoi { '
 public static void main(String[] args) {

C2 obiect = new C2();


System.out.println(obiect.x + obiect.y + obiect.z);}}

Ce puteti spune despre acesta?


a) Eroare la compilare: clasa C2 nu poate fi derivata direct din doua clase.
 b) Eroare la compilare: clasa C2 nu are constructor fara argumente.
c) Programul este corect si la executie va afisa: 6.

3) Fie urmatorul program Java:

class x {

 jvoid
private
x() (int x = 1;
System.out.print(x + " ");}}
class y extends x {
 private int x = 2;
void x() ( super.x();
System.out.print(x); }}
 public class TestAtribute {

http://slidepdf.com/reader/full/grile-java 8/32
5/13/2018 GrileJava-slidepdf.com

 public static void main(String[] args) {


y obiect = new y();
obiect.x() ;}}

Ce puteti spune despre acesta?

a) Eroare
 b) Eroare la
la compilare:
compilare: nu
nu se
se pot defini
poate unun
defini atribut si o
atribut cumetoda
numelecu acelasi
clasei (x).nume (x).
c) Eroare la compilare: nu se poate defini un atribut cu acelafi nume intr-o clasa derivata (x).
d) Programul este corect si la executie va afisa: 1 2.

4) Ce se va afisa la executia urmatorului program?

  public class TestStatic { public static void main(String args []) {


Exemplu a = new Exemplu( );
Exemplu b = new Exemplu ( );

System.out.print("a.x
System.out.print (" a .x= ="+a
" + .x); a .x
a .x); }} = 100; b.x =200;
class Exemplu {
static int x = 0;
Exemplu ( ) (x+ + ; ) ; }

a) a.x = 2 a .x = 200
 b) a .x = 0 a .x = 100
c) a .x = 1 a .x = 100
d) a .x = 1 a .x = 101
e) a .x = 2 a .x = 100

5) Ce puteti spune despre urmatorul program?


  public class Test {
int i = 3, j=4;
 public static void main(String [] arg) (
System.out.println(i ++ + ++ j); }}

a)Va aparea eroare la compilare, deoarece parametrul metodei main () trebuie sa fie String args [
 b)Va aparea eroare la compilare, deoarece nu s-au inserat paranteze intre operatorii ++, adica (i++
si (++j) .
c)Va aparea eroare la compilare, deoarece din functia statica main () nu putem accesa

variabilele nestatice
d)La executie i si j.
se va afisa 8.
e)La executie se va afisa 9.

6) Ce puteti afirma despre urmatorul program?


interface II { float x = 2.3f; } public class Test implements II {
 public static void main(String[] args) { System.out.print(x + " ");
x=6.7f;

http://slidepdf.com/reader/full/grile-java 9/32
5/13/2018 GrileJava-slidepdf.com

System.out.printIn (x); } }

a) Va aparea eroare la compilare, deoarece valoarea variabilei x nu se mai poate modifica


 b) La executie se va afisa 2.3f 6.7f 
c) La executie se va afisa 2.3f 2.3 f.

d) La executie
e) La executie se
se va
va afisa
afisa 2.3
2.3 2.3.
6.7

7) Ce puteti spune despre urmatorul program Java?

interface I1 { int x = 2; }
interface I2 extends I1 { int y = 3; }
class C1 { int y = 4; }
 public class C3 extends C1 implements 12 {
 public static void main(String args[]) {
System.out.println("x = " + x + ", y =" + y) ;} )

a) Va aparea eroare la compilare, deoarece atributul y este ambiguu pentru C1 si I2.


  b) La executie se va afisa x = 2, y = 3.
c) La executie se va afisa x = 2, y = 4.

8) Ce puteti afirma despre urmatorul program Java?

class CI { public String f() {


return this.getClass().getName(); } }
abstract class C2 extends C1 { int x = 2;
 public abstract String f(); } class C3 extends C2 {

int y = String
 public 3; f() { return super.f () + ", x = " + x + ", y = " + y; }} public class TestAbstract {
 public static void main(String args[]) { C3 obiect = new C3();
System.out.println(obiect.f());}}

a) Programul este corect si va afisa la executie: C3, x = 2, y = 3.


  b) Programul este corect si va afisa la executie: C1, x = 2, y = 3.
c) Va aparea eroare la compilare, deoarece in clasa C2 s-a suprascris metoda f () ne-abstracta cu o
metoda abstracta.
d) Va aparea eroare la compilare, deoarece apelul super. f () din clasa C3 se refera la o metod
abstracta.

e) Va aparea eroare la executie, deoarece se intra intr-o recursie infinita in metoda f () din clasa C3
9). Ce modificare trebuie facuta urmatorului program Java pentru a fi corect?

abstract class C1 { int x = 2; public final abstract String f();}


final class C2 extends C1 { int y = 3; public String f(){
return "x = " + x + ", y = " + y;
  public class TestFinal { public static void main (String args[]){

http://slidepdf.com/reader/full/grile-java 10/32
5/13/2018 GrileJava-slidepdf.com

C2 obiect = new C2 (); System.out.println(obiect. f() ) ;

a) Trebuie sters cuvantul final din definitia metodei f () a clasei C1


 b) Trebuie sters cuvantul final din definitia clasei C2;
c) Trebuie sters cuvantul abstract din definitia clasei C1.

d) Trebuie stearsa
e) Programul initializarea
este corect atributului
si la executie x din xdeclaratia
va afisa = 2, y int
= x
3.= 2; a clasei C1.

10) Ce puteti spune despre urmatorul program Java?

class C1 { int x = 1; void f(int x){this.x = x;}


int getX_Cl() { return x; }
}
class C2 extends C1 (
float x = 5. 0f;
int f( int x) { super.f ((int)x) ; }

float
} getX_C2() { return x; }
 public class SuprascriereSiAscundere {
 public static void main(String args[]) { C2 obiect = new C2 (); obiect.f(4);
System.out.print(obiect.getX_C2() + " ");
System.out.println(obiect.getX_Cl() ) ; } }

a) Programul este corect si va afisa la executie: 5.0 4.


 b) Programul este corect si va afisa la executie: 5 4.
c) Programul este corect si va afisa la executie: 4.0 4.
d) Va aparea eroare la compilare, deoarece in clasa C2 s-a suprascris gresit atributul x din clasa C

e) Va aparea
difent de void.eroare la compilare, deoarece metoda suprascrisa f () din clasa C2 intoarce un t

11). Ce puteti afirma despre urmatorul program Java?

class C1 { static String f() { return "Mesajul Unu din C1"; } String g() { return "Mesajul Doi din
C1"; }}
class C2 extends C1 {
static String f() ( return "Mesajul Unu din C2"; } String g() { return "Mesajul Doi din C2"; }
 public class Test { public static void main (String [ ] args) { C1 obiect = new C2();
System.out.println(obiect.f() + ", " + obiect.g());

a) Programul este corect si va afisa la executie: Mesajul Unu din C1, Mesajul Doi din C1.
b) Programul este corect si va afisa la executie: Mesajul Unu din CI, Mesajul Doi dinC2.
c) Programul este corect si va afisa la executie: Mesajul Unu din C2, Mesajul Doi din C1.
d) Programul este corect si va afisa la executie: Mesajul Unu din C2, Mesajul Doi din C2.
e) Va aparea eroare la compilare, deoarece in clasa Test variabila obiect nu apartine clasei C2.

12) Ce puteti spune despre urmatorul program Java?

http://slidepdf.com/reader/full/grile-java 11/32
5/13/2018 GrileJava-slidepdf.com

class C1 { double x = 5. 0f; void f( int x ) { f((double) x + 2);}


void f (double x ) { this.x = x; }}
 public class Supraincarcare { public static void main(String args[]) {
C1 obiect = new Cl(); obiect.f ( 4.0) ; System.out.println ( obiect . x) ; }}

 public class Supraincarcare {


a) Programul este corect si va afisa la executie: 4.0.
 b) Programul este corect si va afisa la executie: 5.0.
c) Programul este corect si va afisa la executie: 6.0.
d) Va aparea eroare la compilare, deoarece exista ambiguitate in alegerea metodei f()
e) Va aparea eroare la executie, deoarece metoda f (int) intra intr-o recursie infinita.

13) . Cercetati corectitudinea urmatorului program Java:

class CI { static int f{) { return j; } static int i = f(); static int j = 1;
 public class TestStatic ( public static void main(String[] args) ( System.out.println (C1.i);}}

a) Programul este corect si va afisa la executie: 0.


 b) Programul este corect si va afisa la executie: 1.
c) Va aparea eroare la compilare, deoarece nu exista nici un obiect declarat al clasei C1.
d) Va aparea eroare la compilare, deoarece membrii clasei C1 nu sunt intr-o ordine corecta.
e) Va aparea eroare la compilare, deoarece s-a omis declararea clasei Cl ca fiind static.

14) Ce puteti afirma despre urmatorul program Java (liniile sunt numerotate)?

 public class
static int x =SubiectLicentaDoi
10; {
static { x +=> 5; }
 public static void main(String args[]) {
System.out.println("x = " + x) ;
}
static { x /= 5; }
}
a) Liniile 3 si 7 nu se vor compila, deoarece lipsesc numele metodelor si tipurile returnate.
 b) Linia 7 nu se va compila, deoarece poate exista doar un initializator static.
c) Codul se compileaza si executia produce iesirea x = 10.

d) Codul se
e) Codul se compileaza
compileaza sisiexecutia
executiaproduce
produceiesirea x x= =15.3.
iesirea

15) Ce se va afisa la execupa urmatorului program Java?

 public class SupracriereSupraincarcare extends Baza..{ public void functie ( int j)


{System.out.print(" j = " + j);}

http://slidepdf.com/reader/full/grile-java 12/32
5/13/2018 GrileJava-slidepdf.com

 public void functie ( String s) {System.out.print (" s = " + s) ; }


 public static void main(String args[]) { baza b1 = new Baza(); baza b2 = new
SupracriereSupraincarcare{);
 b1.functie(5) ; b2.functie(6) ; }}
class Baza {

 public void functie (int i) {System.out.print(" i = " + i);}}


a) i = 5 i = 6.
b
 )j= 5 j = 6.
c) i = 5 j = 6.
d) s = 5 s = 6.
e) Eroare la compilare, deoarece definitia clasei Baza apare dupa definitia clasei
SupracriereSupraincarcare.
f) Eroare la compilare, deoarece lipseste cuvantul virtual din metoda f u n c t i e () a clasei Baza.

16) Ce puteti spune despre urmatorul program Java?

class Cl { static int x = 1; int y = 2; static Cl() { x = 4; }


CKint y) {
this . y = y + 1;
}
  public class Test { [ public static void main(String args[]) { j System.out.print(Cl.x + " ");
Cl obiect = new Cl(5);
System.out.println(obiect.y) ;
}

a) Programul este corect si va afisa la execupe: 1 6.

 b) Programul este


c) Programul este corect
corect si
si va
va afisa
afisa la
la execupe:
execupe: 14 2.
6.
d) Programul este corect si va afisa la execupe: 4 2.
e) Va aparea eroare la compilare, deoarece s-a declarat unul din constructorii clasei Cl ca fiin
static.

17) Ce puteti afirma despre urmatorul program Java?

class Cl { int x = 1; Cl ( int x){ this.x = x; }}


class C2 extends Cl { int y = 3;
C2 (int x) { this ( x , y) ;}

C2(int x,
 public int y) {toString{}{
String super(x); this.y
return="yx;}= " + x + ", y = " + y; }}
 public class Test {
 public static void main(String args[]) { C2 obiectUnu = new C2(4);
C2 obiectDoi = new C2{5, 6); System.out.print(obiectUnu + " ");
System.out.println(obiectDoi); } }

a) Programul este corect si va afisa la executie: x =-4, y = 3, x = 5, y = 6.

http://slidepdf.com/reader/full/grile-java 13/32
5/13/2018 GrileJava-slidepdf.com

 b) Programul este corect si va afisa la executie: x = 1, y = 3, x = 5, y = 6.


c) Programul este corect si va afisa la executie: x = l, y = 3, x = 1, y = 6.
d) Programul este corect si va afisa la execujie: x = l, y = 3, x = l, y = 3.
e) Va aparea eroare la compilare, deoarece primul constructor al clasei C2 contine un apel 
explicit in care al doilea parametru este o variabila instant.

18). Indicati daca programul urmator este corect si ceea ce se va afisa la executia acestuia:

class C1 { int x = 1; C1(int x) { this.x = x ;}}


class C2 extends Cl { int y = 2; public String toString () {
return "x = " + x + ", y = " + y; } }
 public class Test { public static void main(String args[]) { C2 obiectOnu = new C2(); C2 obiectD
= new C2(3); System.out.print(obiectOnu) ; System.out.print(obiectDoi); }}

a) Programul este corect si va afisa la executie : x = 1, y = 2 x = 1, y = 2.


 b) Programul este corect si va afisa la executie : x = l, y = 2 x = 3, y = 2.

c)
d) Programul
Programul este
este corect
corect si
si va
va afisa
afisa la
la executie
executie :: xx =
= 1,
1, yy==33 xx =
= 1,
3, yy ==3.2.
e) Va aparea eroare la compilare, deoarece clasa Cl nu are constructor fara parametri.

19) Stabiliti daca programul urmator este corect sau nu:

interface I1 { int j = 3; int [] i = {j + 1, j + 2); }


interface I2 { int j = 5 ; int []i={j+2,j+4};}
 public class Test implements I1, I2 {
 public static void main (String[] args) { System.out.print( I1.j + " "); System.out.print(I2.i[1] + "
"); } System.out.print(I1.i[0]);}}

a) Programul este corect si va afisa la executie: 3 9 4.


 b) Va aparea eroare la compilare, deoarece interfetele I1 si I2 contin declaratiile acelorasi atribute
c) Va aparea eroare la compilare, deoarece in interfetele I1 si I2 atributul i contine referinta la
atributul j.
d) Va aparea eroare la compilare, deoarece interfetele I1 si I2 contin declaratiile unui atribut de tip
tablou.
e) Va aparea eroare la compilare, deoarece atributele interfetelor I1 si I2 nu se pot accesa dintr-o
metoda statica.

20) Ce puteti spune despre corectitudinea urmatorului program Java?


interface I0 { int x; }
interface I1 extends I0 { int [] y ={ x + l, x+2};}
interface I2 extends I0 { int [] y = {x + 3, x + 4 );}
interface I3 extends I1, I2 { int z = I1.y[0], t = I2.y[l]}
 public class TestAtribute implements I3{ public static void main(String[] args){
I0.x = 3; System.out.print (x + " "); System.out.print(z + " "); System.out .print ( t ) ;}}

http://slidepdf.com/reader/full/grile-java 14/32
5/13/2018 GrileJava-slidepdf.com

a) Programul este corect si va afisa la executie: 3 4 7.


 b) Va aparea eroare la compilare, deoarece interfetele I1 si I2 contin declaratile acelorasi atribute.
c) Va aparea eroare la compilare, deoarece in interfata I0 atributul x nu este initializat.
d) Va aparea eroare la compilare, deoarece interfata I3 acceseaza un atribut ambiguu.

e) Va aparea
metoda staticaeroare la compilare, deoarece atributele interfetelor I0 si I3 nu se pot accesa dintr-o

21) Ce puteti afirma despre urmatorul program Java?

class ExceptiaNoastraUnu extends Exception { ExceptiaNoastraUnu() ( super(); }


}
class ExceptiaNoastraDoi extends Exception { ExceptiaNoastraDoi() { super(); }
}
interface I1 {
int f (int x) throws ExceptiaNoastraUnu, ExceptiaNoastraDoi;

interface
int f(int x)I2throws
extends I1 {
ExceptiaNoastraDoi;
}
class C1 implements I1 {
 public int f(int x) throws ExceptiaNoastraUnu, ExceptiaNoastraDoi {
if (x < 0) throw new ExceptiaNoastraUnu() ;
return x; }
 public int f (int x) throws ExceptiaNoastraDoi { if (x < 0) throw new ExceptiaNoastraDoi!); retur
x; } }
 public class TestSuprascriereMetode { public static void main(String[] args) {
CI obiect = new CIO; try {

System.out.print(obiect.f
{ (2) + " "); System.out.print (obiect.f (-2)); } catch (ExceptiaNoastraUnu
System.out.print("A aparut o exceptie: " + e); } catch (ExceptiaNoastraDoi e) {
System.out.print("A aparut o exceptie: " + e); }}}

a) Programul este corect si va afisa la executie: 2 A aparut o exceptie: ExceptiaNoastraUnu.


  b) Programul este corect si va afisa la executie: 2 A aparut o exceptie: ExceptiaNoastraDoi.
c) Va aparea eroare la compilare, deoarece metoda f () din interfata I2 intra in contradictie cu
metoda f () din I1.
d) Va aparea eroare la compilare, deoarece interfetele I1 si I2 nu contin atributul x.
e) Va aparea eroare la compilare, deoarece in clasa C1 nu se poate implementa metoda f () di

interfata I1.
22) Selectati varianta corecta referitoare la corectitudinea programului Java de mai jos:

interface I1 { int f( int x); } interface I2 extends I1 { float f (float x); double f (double x);
class C1 implements I2 { public int f (int x) { return x; }}
 public float f (float x) { return x; } public double f (double x) ( return x; ) }

http://slidepdf.com/reader/full/grile-java 15/32
5/13/2018 GrileJava-slidepdf.com

 public class TestSupraincarcareMetode { public static void main(String[] args) { C1 obiect = new
C1 ();
System.out.print (obiect.f(2) + " "); System.out.print(obiect.f (4.5) + " ");
Systerm.out.print(obiect.f (2 . 5f) ) ;}}

a) Programul este corect si va afisa la executie: 2 4.5 2.5.


 b) Programul este corect si va afisa la executie: 2 4 . 5 2 . 5f.
c) Va aparea eroare la compilare, deoarece metodele f () din interfata I2 intra in contradictie cu
metoda f () din I1.
d) Va aparea eroare la compilare, deoarece metodele f () din interfata I2 intra in contradictie intre
ele.
e) Va aparea eroare la compilare, deoarece metodele f () din interfetele I1 si I2 nu sunt declarate
 public.

23) Cercetati corectitudinea urmatorului program:

 public class
class C1 { Test { public static void main(String args[]) { C1 obiect = new Cl(); obiect .f (4, 3) 0
 public void f (int xx, final int yy) ( int a = xx + yy; final int b = xx - yy; class C2 { , .
 public void g() { System.out.print("a = " + a); System.out.print(", b = " + b); } } C2 obiectDoi =
new C2(); obiectDoi .g () ; } }}

a) Programul este corect si va afisa la executie: a = 7, b = 1.


 b) Programul este corect si va afisa la executie: a = 4, b = 3.
c) Va aparea eroare la compilare, deoarece din metoda g () nu putem accesa variabila locala
din metoda f ().
d) Va aparea eroare la compilare, deoarece clasa C2 nu poate fi definita in metoda f () din clasa C

e) Va aparea eroare la compilare, deoarece nu se creeaza in clasa Test un obiect de tip C1.C2.
24) Verificati corectitudinea urmatorului program Java:

 public class Exemplu { int vl[] = (0), v2[] = (1); public static void main (String args[]) {
int vl[] = (2), v2[] = {3}; System.out.print(vl[0] + " " + v2[0] + " "); f (vl, v2);
System.out.println (vl [0] + " " + v2 [0]); } public static void f (int vl[], int v2[]) { int w[ ] = {4}
vl = w; v2[0] = w[0]; System.out.print(vl [0] + " " + v2[0] + " ");

a) Programul este corect si va afisa la executie: 0 1 4 4 0 1.


  b) Programul este corect si va afisa la executie: 2 3 4 4 0 1.

c)
d) Programul estecorect
Programul este corectsisivavaafisa
afisalala executie:2 23 34 44 44 24. 4.
executie:
e) Va aparea eroare la compilare, deoarece atributele vl si v2 sunt redefinite ca variabile locale in
metoda main {}

25) Ce puteti spune despre urmatorul program Java (liniile sunt numerotate)?

class CI { int x = 1; }

http://slidepdf.com/reader/full/grile-java 16/32
5/13/2018 GrileJava-slidepdf.com

class C2 extends C1 { int y = 2; }


 public class TestCompilare {
 public static void main(String[] args) {
C1 obiectUnu = new Cl();
System.out.print(obiectUnu.x + " ");

obiectUnu = new C2();


System.out.print(obiectUnu.x + " ");
C2 obiectDoi = (C2) obiectUnu;
System.out.print(obiectDoi.x + " ");
}}

a) Programul este corect si va afisa la executie: 1 1 1 .


 b) Va aparea eroare la compilare la linia 7, deoarece obiectUnu este deja definit la linia 5.
c) Va aparea eroare la compilare la linia 9, deoarece obiectUnu este de tip C1 definit la linia 5.
d) Vor aparea erori de compilare la liniile 5, 7 si 9, deoarece intr-o metoda statica nu putem crea
variabile obiect.

e) Va aparea eroare la executie, aruncand exceptia ClassCastException.


26) Stabiliti care ifirmatii sunt adevarate pentru programul Java din cele de mai jos (liniile sunt
numerotate):

 public class TestTablouri {


 public static void main(String[] args) {
int[] a = (2, 6);
Object b = a; .
System.out.print(b[0] + " ");
 byte[] c = new byte[2];

c = a ;
System.out.print (c[l] + " ") ;
}}

a) Programul este corect si va afisa la executie: 2 6.


 b) Va aparea eroare la compilare doar la linia 4, deoarece b necesita o conversie explicita.
c) Va aparea eroare la compilare doar la linia 5, deoarece b [ 0 ] nu poate fi accesat.
d) Vor aparea erori de compilare la linia 5, deoarece b [ 0 ] nu poate fi accesat si la linia 7,
deoarece tipurile componentelor tablourilor a si c nu sunt compatibile.
e) Va aparea eroare la executie din cauza liniei 5, aruncandu-se exceptia Class¬CastException.

27. Indicati daca program Java de mai jos este corect sau stabiliti natura erorilor (liniile sunt
numerotate):

class C1 { int x = 1; }
class C2 extends C1 { int y = 2; }

http://slidepdf.com/reader/full/grile-java 17/32
5/13/2018 GrileJava-slidepdf.com

interface I1 { int x = 3; void f(int x); }


class C3 extends C1 implements I1 {
int x = 4;
 public void f(int x) { this.x = x; }
}

 public class TestConversii


 public static {
void main(String[] args) {
C3 obiectUnu = new C3( );
I1 obiectDoi = obiectUnu;
System.out.print(obiectDoi.x);
C2 [] obiectTrei = new C2[3];
System.out.print(obiectTrei[0].x + " ");
C1 [] obiectPatru = obiectTrei;
System.out.print(obiectPatru(1].x + " ");
obiectTrei = (C2[]) obiectPatru;
}}

a) Programul este corect si va afisa la executie: 3 2 1.


b) Programul este corect la compilare si va afisa la executie 3, urmat de aruncarea exceptiei 
 NullPointerException la linia 14.
c) Programul este corect la compilare si va afisa la executie 3, urmat de aruncarea exceptiei
 NullPointerException la linia 16.
d) Va aparea eroare la compilare doar la linia 15, deoarece tipurile componentelor tablourilor 
obiectTrei si obiectPatru nu sunt compatibile.
e) Va aparea eroare la executie la linia 17, aruncandu-se exceptia ClassCast Exception.

28). Ce puteti spune despre urmatorul program Java?

class CI { int x = 1; } interface I1 { int x = 2; void f (int x); } class C2 extends C1 implement
I1 {
int x = 3; public void f(int x) { this.x = x; } public class Test { public static void
main(String[] args) {
C1 obiectUnu = new C2(); System.out.print(obiectUnu.x) ; I1 obiectDoi = (C2) obiectUnu;
System.out.println(" " + obiectDoi.x);}}

a) Programul este corect si va afisa la executie : 1 2.


 b) Programul este corect si va afisa la executie: 3 2.
c) Programul este corect si va afisa la executie: 3 3.

d) Va aparea
e) Va aparea eroare
eroare la
deexecutie
compilare
la la crearea
afisarea luilui obiectDoi.
obiectDoi. x, aruncandu-se exceptia
ClassCastException.

29) Verificaji daca programul de mai jos este corect:

interface I1 { int x =1; void f(int x); }


class C1 implements I1{ int x = 2; public void f (int x) { this.x = x ; }

http://slidepdf.com/reader/full/grile-java 18/32
5/13/2018 GrileJava-slidepdf.com

 public class Test {


 public static void main(String[] args) ( C1 obiectUnu = new C1( ); System.out.print (obiectUnu .x
I1 obiectDoi = obiectUnu; System.out.println(" " + obiectDoi.x); } }

a) Programul este corect si va afisa la executie: 2 1.

 b) Programul
c) Va este corect
aparea eroare si va afisa
de compilare la la executie:
crearea 2 2.
lui obiectDoi, fiind necesara o conversie explicita de
forma (C2).
d) Va aparea eroare de compilare la crearea lui obiectDoi, deoarece atributul x se suprascrie.
e) Va aparea eroare la executie la afisarea lui obiectDoi .x, aruncandu-se exceptia
ClassCastException.

30) Ce puteti afirma despre urmatorul program Java?


class C1 { int x = 1; void f (int x) { System.out .print ( " Unu ");,
this .x = x; } } interface I1 { int x = 2; void f ( int x) ; } class C2 extends C1 implements I1 { int
3; public void f(int x) {

System.out.print("Doi
C1 obiectUnu = new C2("); );
this.xSystem.out.print(obiectUnu.x
= x;}} public class Test { +public
" ") ; static void main(4)
obiectUnu.f (String[]
; args
I1 obiectDoi = (C2) obiectUnu; obiectDoi.f(5); System.out.println(obiectDoi.x) ; }}

a) Programul este corect si va afisa la executie: 1 Unu Doi 2.


  b) Programul este corect si va afisa la executie: 1 Unu Doi 3.
c) Programul este corect si va afisa la executie: 1 Doi Doi 2.
d) Programul este corect si va afisa la executie: 3 Doi Doi 2.
e) Programul este corect si va afisa la executie: 3 Doi Doi 3.
f) Va aparea eroare de compilare la crearea lui obiectDoi, deoarece atributul x se suprascrie.
g) Va aparea eroare la execute la afisarea lui obiectDoi.x, aruncandu-se exceptia

ClassCastException
31) Indicati daca programul de mai jos este corect si, in caz afirmativ, ce va aparea pe ecran:
class C1 { int x = 1; void f(int x) { System.out.print("1 "); this.x = x;}}
class C2 extends C1 ( int x = 2; public void f (int x) ( System.out.print("2 ");
this. x = x;;}} class C3 extends C1 { int x = 3; public void f (int x) {
System.out.print("3 "); this.x = x ; }}
 public class Test { public static void main (String[] args) { C1 obiectUnu = new C2( ); C1 obiectD
= new C3( );
System.out.print(obiectUnu.x + " " + obiectDoi.x + " "); obiectUnu.f (4); obiectDoi.f(5);
System.out.print(obiectUnu. x + " " + ((C2) obiectUnu) .x +” ”);

System.out.print(obiectDoi.x + “ “ + ((C3)obiectDoi).x);}}
a) Programul este corect si va afisa la executie : 1 1 1 1 1 4 1 5.
b) Programul este corect si va afisa la executie : 1 1 2 3 1 4 1 5.
c) Programul este corect si va afisa la executie : 2323243 5.
d) Programul este corect si va afisa la executie: 2 3 2 3 4 4 5 5.
e) Vor aparea erori de compilare la crearea instantelor obiectUnu si obiectDoi, deoarece atributul
se suprascrie.

http://slidepdf.com/reader/full/grile-java 19/32
5/13/2018 GrileJava-slidepdf.com

f) Va aparea eroare la executie la afisarea lui obiectUnu. x, aruncandu-se exceptia


ClassCastException

32) Ce puteti afirma despre programul Java de mai jos?


class C1 { int x =1; C1 ( int x) { this.x = x; } } class C2 extends C1 { int x = 3, y = 4;

C2 ( intstatic
 public x, intvoid
y) {main
super( (String
x ); this.y
args[=])y;{ }C1[]
} public class=Test
tablouUnu new{C2[3];
for ( int i = 0; i < tablouUnu.length; i++); tablouUnu[i] = new C2(i * 2, i * 3);
C2[ ] tablouDoi = (C2 [ ]) tablouUnu; for (int i = 0; i < tablouUnu. length; i++)
System.out.print(tablouDoi[i] . x + " " + tablouDoi[i].y + “ ” ) }}

a) Programul este corect si va afisa la executie: 1 0 1 3 1 6


 b) Programul este corect si va afisa la executie: 1 4 1 4 1 4
c) Programul este corect si va afisa la executie: 3 0 3 3 3 6 
d) Programul este corect si va afisa la executie: 3 4 3 4 3 4
e) Vor aparea erori de compilare la crearea instantelor tablouUnu si tablouDoi, deoarece atributul

se suprascrie.
f) Va aparea eroare la executie la afisarea lui tablouUnu.x, aruncandu-se exceptia
ClassCastException.

33) Verificati corectitudinea programului urmator si specificati ce se va afisa:


class C1 ( int x = 1; C1 (int x) ( this.x = x;) } class C2 extends C1 { int x = 2, y = 3; C2 ( int x)
{ super (x); } C2 (int x, int y) { super (x); this.y = y; }}
 public class ApelExplicitConstructor { public static void main (String args [ ]) {
C1 obiectUnu = new C1 (4); C2 obiectDoi = new C2(5);
C2 obiectTrei = new C2 (6, 7); System.out.print (obiectUnu.x + " ");
System.out.print(obiectDoi.x + “ “ + obiectDoi.y + “ “); System.out.print(obiectTrei.x + “ “ +

obiectTrei.y);}}
a) Programul este corect si va afisa la executie : 4 1 2 1 7.
  b) Programul este corect si va afisa la executie : 4 1 3 6 7.
c) Programul este corect si va afisa la executie : 4 2 3 2 7.
d) Programul este corect si va afisa la executie : 4 5 3 6 7.
e) Vor aparea erori de compilare la crearea instantelor obiectDoi si obiectTrei, deoarece atributul x
se suprascrie.
f) Va aparea eroare la execute la afisarea lui ObiectDoi. x , aruncandu-se exceptia
ClassCastException.

Test 4
Intrebarea 4.7,1. Un obiect de tip String permite parcurgerea caracter cu caracter a literalului stoca

a) Exista o metoda care se ocupa cu lucrul acesta.


b) Se poate realiza cu ajutorul mai mulor metode din clasa String.
c) Se poate realiza doar prin intermediul clasei stringBuffer.
d) Aceasta operatie poate fi efcctuata si cu ajutorul unui obiect de tip String Tokenizer.

http://slidepdf.com/reader/full/grile-java 20/32
5/13/2018 GrileJava-slidepdf.com

Intrebarea 4.7.2. Ce se poate spune despre urmatoarea scventa de cod?

String s = "String";
s.toString ().toString.toString();

a) Se obtine eroare la compilare, deoarece nu s-a utilizat operatorul new pentru obiectul s
 b) Apare o eroare la compilare, intrucat obiectul s va contine numele unui cuvant rezervat
c) Se va genera o eroare la executie, pentru ca metoda toString () returneaza o valoare care nu es
 preluata.
d) Codul este corect din punct de vedere sintactic.
e) Se apeleaza metode toString () pentru acelasi obiect.

Intrebarea 4.7.3. Care dintre metodele clasei String de mai jos returneaza un obiect de tip String?

a) replace()

 b) split()
c) intern()
d) toLowerCase()

Intrebarea 4,7.4. Ce va afisa la consola urmatorul apel?

System.out.println(10 + 9 + new StringBuffer("opt") + 7 + 6 + "5")

a)109opt765
 b)19opt135
c)19opt18

d)19opt765
e) Se obtne o eroare la compilare sau la executie.

Intrebarea 4.7.5. Pentru a gestiona numele unor persoane, care structura este mai eficienta pentru
cautare?
a) o colectie de tip vector;
 b) o tabela hash;
c) o lists dublu inlantuita
d) un arbore binar;
e) o multime

Test 5

5.6.1. Care dintre afirmatiile de mai jos sunt adevarate?

http://slidepdf.com/reader/full/grile-java 21/32
5/13/2018 GrileJava-slidepdf.com

a) caracterle UTF se reprezinta pe 8 bit;


 b) caracterele UTF se reprezinta pe 16 biti;
c) caracterele UTF se reprezinta pe 24 biti;
d) caracterele Unicode se reprezinta pe 16 biti;
e) caracterele Bytecode se reprezinta pe 16 biti.

5.6.2. Care din afirmatiile de mai jos sunt adevarate?

a) Cand se creeaza o instanta a lui File si nu se foloseste semantica de denumire a fisierelor de pe


masina locala, atunci constructorul va arunca o exceptie IOException
 b) cand se creeaza o instanta a lui File si fisierul respectiv nu exista pe sistemul de fisiere local,
atunci se creeaza un astfel de fisier;
c) cand o instanta a lui File este eliberata de garbage collector, atunci fisierul corespunzzator de
sistemul local esie sters
d) Nici una dintre afirmatiile de mai sus nu este adevarata

5.6.3. Pentru
Clasa File afirmatiile
contine de mai
o metoda carejos, selectati
schimba pe cele de
directorii adevarate:
lucru curent;
Clasa File contine o metoda care listeaza continutul directorului de lucru curent.

a) Nu,Nu
  b) Da, Nu
c) Nu, Da
d) Da, Da

5.6.4, Cati octeti va scrie codul java de mai jos catre fisierul fisier. txt?

try {
FileOutputStream f1 = new FileOutputStream ("fisier.txt")
DataOutputStream f2 = new DataOutputStream (f1)
f2.writeInt(3)
f2.writeDouble(0.01)
f2.close()
f1.close()
}

a) 2
 b) 8

c)
d) 12
16
e) numarul de octeti va depinde de sistemul local respectiv

5.6.5 Ce va afisa subcodul Java de mai jos la linia 8?

1. FileOutputStream f1 = new FileOutputStream("fisier.txt")


2. for(byte b=10; b<50;b++) f1.write(b)

http://slidepdf.com/reader/full/grile-java 22/32
5/13/2018 GrileJava-slidepdf.com

3. f1.close();
4. RandomAccesFile f2 = new RandomAccesFile("fisier.txt","r")
5. f2.seek(10)
6. int i = f2.read();
7. f2.close()

8. System.out.println("i = " + i)
a) i=10
b) i=20
c) i=30
d) se va arunca o exceptie la linia 1
e) se va arunca o exceptie la linia 4

5.6.6 Presupunem ca utilizam codul de mai jos pentru a crea un fisier:

FileOutputStream f1 = new FileOutputStream("fisier.txt")

DataOutputStream f2 = new DataOutputStream(f1)


for(int i=0;i<500;i++)
f2.writeInt(i)
Pentru a citi date din acest disier, care dintre situatiile de mai jos este corecta?

a) Construim un FileInputStream caruia i se trimite ca parametru numele fisierului. Folosin


acest obiect, se creeaza un obiect DataInputStream caruia i se apeleaza metoda readInt()
 b) Construim un FileReader caruia i se trimite ca parametru numele fisierului. Folosind acest obi
se apeleaza metoda readInt()
c) Construim un PipedInputStream caruia i se trimite ca parametru numele fisierului. Folosind ace
obiect, se apeleaza metoda readInt()

d) Construim
obiect, un RandomAccesFile
se apeleaza caruia i se trimite ca parametru numele fisierului. Folosind ac
metoda readInteger()
e) Construim un FileReader caruia i se trimite ca parametru numele fisierului. Folosind acest obie
se creeaza un obiect DataInputStream caruia i se apeleaza metoda readInt()

5.6.7 Pentru afirmatiile de mai jos, selectati pe cele adevarate:


Clasa Readers contine o metoda care citeste si returneaza o valoare de tip float
Clasa Writers contine o metoda care scrie o valoare de tip float

a) Nu, Nu
 b) Da, Nu

c)
d) Nu,
Da, Da
Da

5.6.8 Fie codul Java de mai jos. Care este rezultatul executiei lui?
1. File f1=new File("numeDirector")
2. File f2=new File(f1, "numeFisier")
a) eroare de compilare la linia 2, deoarece avem un apel recursiv nepermis
b) programul este corect, dar nu se creeaza nici un director si nici un fisier 

http://slidepdf.com/reader/full/grile-java 23/32
5/13/2018 GrileJava-slidepdf.com

c) programul este corect si se creeaza in directorul curent un director cu numele numeDirector, iar
acest director se creeaza fisierul cu numele numeFisier 
d) programul este corect si se creeaza in directorul curent un director cu numele numeDirector, si
creeaza fisierul cu numele numeFisier 

5.6.9 Presupunem
directorul de lucru ca avemsiun
curent ca fragment de cod
in directorul javanudintr-o
curent existaaplicatie care are
fisierul numit drept deCare
fisier.txt. scriere
va fiin
rezultatul compilarii si executiei codului de mai jos?
1. try {
2. RandomAccesFile f1 = new RandomAccesFile(
3. "fisier.txt", "rw" )
4. BufferedOutputStream f2 = new BufferedOutputStream (f1)
5. f3.writeDouble (Match.PI);
6. f3.close()
7. f2.close()
8. f1.close()

9. } catch (IOException e) {}
a) Codul java de mai sus nu se poate compila
 b) Codul java de mai sus se poate compila, dar arunca o exceptie la linia 3
c) Codul java de mai sus se poate compila si executa, dar nu are nici un efect pe sistemul de fisier
local
d) Codul java de mai sus se poate compila si executa, creandu-se fisierul fisier.txt in directoru
curent.

5.6.10 Presupunem ca avem o clasa C1 care extinde interfata Serializable


Selectati o optiune de mai jos in functie de valoarea de adevar a urmatoarelor afirmatii:

1. Intotdeauna clasa C1 trebuie sa redefineasca metodele readObject() si writeObject()


2. Daca C1 extinde clasa Applet, atunci nu este nevoie sa se redefineasca metodele readObject() s
writeObject()
3. Atributele transient din clasa C1 nu vor fi serializate

a) 1,2,3
 b) 1,2
c) 1,3
d) 2,3
e) 2

5.6.11 Peresupunem ca avem un program Java si ca in directorul de lucru curent exista drepturi de
scriere. Care va fi rezultatul compilarii si executiei codului de mai jos?

import java.io.*;

class C1 {
 private double a = 3.45;

http://slidepdf.com/reader/full/grile-java 24/32
5/13/2018 GrileJava-slidepdf.com

 public String toString() (return "a = " + a;)


}
 public class TestGrilaSerializare {
 public stati void main (String args []) {
C1 obiect = new C1();

try {
ObjectOutputStream oos = new ObjectOutputStream (
new FileOutputStream ("intrare.dat"));
oos.writeObject(obiect);
oos.close();
}
catch (IOException e) {
System.out.println("Eroare la serializare" + e.getMessage());
}
try {
ObjectInputStream ois = new ObjectInputStream(

new FileInputStream("intrare.dat"))
C1 obiectCitit = (C1) ois.readObject();
System.out.println(obiectCitit);
ois.close();
}
catch (IOException e) {
System.out.println("Eroare la deserializare" + e.getMessage())
}
catch (ClassNotFoundException e) {
System.out.println("N-am gasit clasa obiectului in flux" + e.getMessage());
}

}
}

a) Codul Java de mai sus nu se poate compila


 b) Codul Java de mai sus se poate compila, dar arunca o exceptie la serializare
c) Codul Java de mai sus se poate compila, dar arunca o exceptie la deserializare
d) Codul Java de mai sus se poate compila, dar arunca doua exceptii (la serializare si la
deserializare)
e) Codul Java de mai sus se poate compila si executa, afisandu-se textul a = 3.45

Test 6

Intrebarea 6.6.1.
Care dintre afirmatiile urmatoare sunt false?

a) Un fir de executie nu poate crea un alt fir de executie.


b) O aplicatie poate crea cel mult 10 fire de executie.
c) Doua fire de executie nu pot citi simultan date din acelasi fisier.
d) Firele de executie nu pot avea obiecte comune.

http://slidepdf.com/reader/full/grile-java 25/32
5/13/2018 GrileJava-slidepdf.com

e) Pentru fiecare fir de executie trebuie sa definim o clasa.

Intrebarea 6.6.2. Cuvantul cheie syncronized se refera la:

a) sincronizarea comunicarii intre firele de execupe;

 b) speclficarea datelor tare vor fi accesibile tuturor.firelor He execupe;


c) excluderea mucuala;
d) proprietatea de contmuitate,

Intrebarea 6.6.3. Sincronizarea firelor de execute se realizcaza cu ajutorul:


a) cuvantului cheie syncronized;
 b) datelor membre statice;
c) metodelor wait (), notify () si notifyAll () ;
d) metodelor sleep (), notify () si notifyAll ().

Intrebarea 6.6.4. Un fir de execupe poate mtra in swrea de blocare astfel:

a) prin apelul metodei sleep();


 b) automat de catre sistemul de operare;
c) prin apelul metodei block ();
d) prin apelul metodei wait ().

Test 7

Intrebarea 7.9.1. Care dintre afirmatile de mai jos referitoare la appleturi sunt adevarate:

a)
 b) Sunt stocate
Sunt executate
pe de catre serverul
serverul Web. Web.
c) Sunt compilate de navigatorul Web.
d) Sunt executate de navigatorul Web.

Intrebarea 7.9.2. Precizati care dintre afirmatiile urmatoare sunt false:

a) Orice navigator Web poate rula appleturi.


 b) Appleturile pot fi stocate pe orice server Web.
c) Appleturile pot fi stocate local, pe calculatorul clientului.
d) Cel mult un applet poate fi continut de un document Web.

Intrebarea 7.9.3. Un applet poate fi:

a) Executat cu appletviewer fara sa cream o pagina HTML.


b) Simultan si aplicatie de sine statatoare.
c) Executat cu ajutorul comenzii java.

http://slidepdf.com/reader/full/grile-java 26/32
5/13/2018 GrileJava-slidepdf.com

d) Compilat doar la incarcarea acestuia in navigatorul Web.

Intrebarea 7.9.4. Care dintre propozitiile urmatoare referitoare la metodele unui applet sunt
adevarate?

a) Trebuie sa redefinim macar o metoda, altfel obtinem eroare la compilare.


b) Sunt apelate automat de navigatorul Web.
c) Pot fi apelate direct de catre utilizatori.
d) Nu se pot declara noi metode.

Intrebarea 7.9.5. Care dintre afirmatiile urmatoare sunt false?

a) Doar appleturile din aceeasi pagina Web pot comunica intre ele.
 b) Un applet poate fi configurat din cadrul paginii Web.
c) Un document Web poate contine un applet de pe alt server Web.
d) In anumite situatii un applet poate avea acces la sistemul de fisiere local.

 Nici una nu este corecta

Intrebarea 7.9.6. Un applet poate contine:

a) imagini stocate in fisiere externe;


b) elemente de redare a sunetelor aflate in fisiere externe;
c) texte de diferite dimensiuni si culori;
d) figuri geometrice bidimensionale;
e) Nu poate contine simultan imagini, desene, text si audio.

Intrebarea
a) contina o7.9.7. O componeiua
reprezentare graficagidfica trebuie neaparat sa:
 b) aiba atapt un ascultator pentru interceptarea Cicciunilori
c) fie vizibila
d) fie atasata unei suprafete de desenare
 Nici una nu este corecta

Intrebarea 7.9.8 Care dintre urmatoarele clase nu reprezinta componente grafice?

a) Panel

 b) Canvas
c) SoundComponent 
d) Container 
e) Applet
f) List

Intrebarea 7.9.9 Care dintre gestionarii de pozitionare de mai jos pot fi utilizati de appleturi?

http://slidepdf.com/reader/full/grile-java 27/32
5/13/2018 GrileJava-slidepdf.com

a) GridBagLayout 
 b) TableLayout
c) DefaultLayout
d) FlowLayout 
e) WindowLayout

Intrebarea 7.9.10 Care dintre urmatoarele metode trebuie implementate pentru tratarea
evenimentului de apasare a unu buton?

a) Nu trebuie definita nici o metoda.


b) actionPerformed()
c) actionListener()
d) itemStateChanged()

Intrebarea 7.9.11 Care dintre urmatoarele clase definesc ferestre?

a) WindowListener 
 b) FileDialog 
c) Applet
d) Frame
e) MainWindow

Intrebarea 7.9.12 Un manager de securitate poate stabili:

a) drepturile de acces pentru fisiere


b) restrictii pentru executarea anumitor aplicatii 
c) care appleturi sa poata accesa sistemul local de fisiere

d) doar restrictii, nu si drepturi


Intrebarea 7.9.13 Ce metoda trebuie definita pentru a putea desena pe suprafata appletului?

a) Nu trebuie definita nici o metoda.


 b) update()
c) paint()
d) repaint()

Test 8

Intrebarea 8.11.1 Ce reprezinta un sistem de gestiune al bazelor de date(DBMS)?


a) O aplicatie care acceseaza baze de date tinute de un server 
 b) Un sistem de reguli si conventii care reglementeaza schimbul de date intre componentii unei
arhitecturi client-server.
c) Un sistem care permite gestionarea bazelor de date si ofera modalitati ca acestea sa fie
accesate de clienti via conexiuni.
d) Un gestionar de conexiuni intre un client si un server de baze de date.

http://slidepdf.com/reader/full/grile-java 28/32
5/13/2018 GrileJava-slidepdf.com

Intrebarea 8.11.2 Ce reprezinta un driver JDBC?

a) O componenta fizica ce trebuie instalata ca un modul al calculatorului, pentru a ne putea conect

la un server de baze de date.


b) O componenta soft care intermediaza inte un client java si un DMBS(SGBD).
c) O aplicatie server care trimite date clientilor in urma unor interogari SQL.
Intrebarea 8.11.3 Ce reglementeaza specificatia JDBC?

a) Cum trebuie construiti clientii care folosesc driverele JDBC.


b) O serie de interfete standard ce trebui suprascrise de creatorii de drivere JDBC.
c) Sintaxa SQL.
d) Versiunile dirverelor JDBC
e) concordanta dintre JDBC si ODBC.

Intrebarea 8.11.4 Fie urmatorul apel:

Statement declar = con.createStatement (


ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.
CONCUR_UPDATABLE);

Ce proprietati vor avea instantele ResultSet obtinute folosind acest obiect Statement?

a) Vor avea cursor deplasabil numain inainte si vor fi senzitive la modificarile din tabelele
interogate.

 b) Vor avea cursor pozitionabil pe orice linie, pemitand modificarea programatica a tabelei
interogate.
c) Vor fi insezitive la modificarile survenite in tabele, permitand modificarea programatica a
tabelelor interogate.

Intrebarea 8.11.5 Fie tabela t cu 10 inregistrari si avand coloanele a si b, respectiv urmatoarea


secventa de cod:

ResultSet rez = instructiune.executeQuery("select * from t");


rez.last();
rez.updateInt|"a",100);

rez.updateString(2,"I");
rez.first();

Care dintre afirmatiile de mai jos sunt adevarate dupa executia codului?

a) Se va adauga in tabela t o noua inregistrare.


 b) Se va modifica ultima linie din tabela pentru a actualiza elementul de pe coloana a la 100 si
elementul de pe coloana b la "I".

http://slidepdf.com/reader/full/grile-java 29/32
5/13/2018 GrileJava-slidepdf.com

c) Tabela va ramane nemodificata

Intrebarea 8.11.6 Ce reprezinta un obiect java.sql.Clob obtinut in urma unui apel getClob al clasei
ResultSet?

a) Un
 b) sir de caractere
O referinta spre un cu o lungime
obiect mai mare
de tip SQL Blob decat
stocat256
de DBMS
c) Un tip de date SQL definit de ultilizator.

 Nici una nu este corecta

Intrebarea 8.11.7 Fie secventa de cod:

Class.forName(" com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection(
"jdbc:mysql://localhost/arhiva?

user=utilizator&password=parola&useUnicode=true&characterEncoding=UTF-8");

Care dintre afirmatiile urmatoare este adevarata?

a) Codul permite obtinerea unei conexiuni la serverul MySQL folosind driverul MMMySQL.
 b) Codul permite realizarea unei conexiuni la serverul MySQL si cere driverului sa foloseasca
standardul Unicode in comunicatie.
c) Codul inregistreaza driverul Connector/J si realizeaza o conexiune la serverul MuSQL
 folosind acest driver.

Intrebarea 8.11.8 Ce
a) Implementarea reprezinta
obiectuala ODBC? JDBC.
a driverelor
 b) Un driver JDBC care permite conectarea la baze de date Acces.
c) O sursa de date.
d) Un server DBMS.

 Nici una nu este corecta

Intrebarea 8.11.9 Ce determina un apel commit()?

a) Terminarea unei tranzactii.

b) Incepereaunei
c) Anularea unei noi tranzactii.
tranzactii.

Intrebarea 8.11.10 Care dintre afirmatiile urmatoare reprezinta problema citirii murdare (eng. dirty
read)?

a) Un client citeste date dintr-o tabela, dar intre timp alt client modifica respectivele date. Recitind
 primul client obtine alte informatii.

http://slidepdf.com/reader/full/grile-java 30/32
5/13/2018 GrileJava-slidepdf.com

b) Un client scrie o informatie in baze de date fara a salva definitiv datele si un alt client 
 foloseste intre timp informatia. Primul client renunta, iar al doilea modifica valoarea citita si
salveaza.
c) Un client aplica metoda commit, in timp ce altul aplica metoda rollback.

Test 9
Intrebarea 9.7.1 Care dintre urmatoarele afirmatii sunt false?

a) Comunicarea prin datagrame nu asigura primirea corecta (nedeteriorata) a mesajelor.


 b) Protocolului HTTP este orientat conexiune.
c) La un port pot asculta mai multe servere TCP.
d) Doar un server TCP si unul UDP pot asculta la acelasi port.

Intrebarea 9.7.2 Care dintre afirmatiile urmatoare sunt adevarate:

a)
b) O
Unaplicatie serversapoate
socket paote asculta
asculte la unlasingur
mai multe
port. porturi.
c) O masina din retea poate avea mai multe adrese IP.
d) O masina din retea poate avea un singur nume (domeniu)

Intrebarea 9.7.3 Apelurile de metode la distanta se realizeaza:

a) prin conexiune TCP 


 b) prin datagrame
c) prin intermediul protocolului HTTP;
d) cu ajutorul firewall-urilor.

Intrebarea 9.7.4 Denumirea URL vine de la:

a) Universal Resource Location


 b) Universal Resource Locator 
c) Uniform Resource Location
d) Uniform Resource Locator 

Intrebarea 9.7.5 Pentru a apela metodele unui obiect la distanta trebuie sa:

a) pornim un registru de nume

 b) cream unosocket


c) realizam cererepentru
pentruarespectivul
stabili o conexiune cu intermediul
obiect prin serverul RMI
socketului creat anterior 
d) obtinem o instanta a obiectului la distanta

Intrebarea 9.7.6 Care dintre afirmatiile urmatoare referitoare la trimiterea obiectelor la distanta ca
 parametri ai metodelor la distanta sunt adevarate?

a) Nu se pot trimite

http://slidepdf.com/reader/full/grile-java 31/32
5/13/2018 GrileJava-slidepdf.com

 b) Se trimite o copie a lor 


c) Se trimite o referinta la distanta
d) Se trimite obiectul stub corespunzator 
e) Se trimite obiectul skeleton corespunzator 

Intrebarea 9.7.7 Serializarea obiectelor la distanta se poate realiza


a) ca la obiectele locale
 b) ca la obiectele locale, numai ca la restaurare vor aparea probleme.
c) Intr-un mod specific, RMI implementand interfata
RMISerializable;
d) Nu se pot serializa obiectele la distanta.

http://slidepdf.com/reader/full/grile-java 32/32

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