Grila PJ
1.Se considera clasele
public class Persoana {
String nume; public
Persoana(){
nume="Danut";
}
}
public class Inginer extends Persoana{}
public class Main {
public static void main(String[] args) {
Inginer i=new Inginer();
System.out.println(i.nume);
}
}
String nume; public
Persoana(){
nume="Danut";
}
}
public class Inginer extends Persoana{}
public class Main {
public static void main(String[] args) {
Inginer i=new Inginer();
System.out.println(i.nume);
}
}
Precizati cum va functiona programul principal:
A) va afisa null pe ecran
B)Va afisa numele Danut pe ecran
C) numele va fi neinitializat deci va afisa sirul vid
D) va genera eroare de compilare, numele nefind accesbil din clasa Inginer
2.Precizati efectul urmatoarei secvente:
String s= "ABCDE";
s.toLowerCase();
System.out.println(s[1]);
s.toLowerCase();
System.out.println(s[1]);
A)Va genera eroare de compilare
B)va afisa litera b pe ecran
C)va afisa bcde pe ecran
D)va afisa litera B pe ecran
E)va afisa BCDE pe ecran
3.Se considera clasele imbricate de mai jos:
class ClasaExterioara {//Outer class
private int a=3;
class ClasaInterioara{//Inner class
private int b=4;
public void afisare(){
System.out.println("a=" +a+"b="+b);
}
}
}
class Main{
public static void main(String[] args) {
ClasaExterioara o1=new ClasaExterioara();
ClasaExterioara.ClasaInterioara o2=o1.new
ClasaInterioara();
}
private int a=3;
class ClasaInterioara{//Inner class
private int b=4;
public void afisare(){
System.out.println("a=" +a+"b="+b);
}
}
}
class Main{
public static void main(String[] args) {
ClasaExterioara o1=new ClasaExterioara();
ClasaExterioara.ClasaInterioara o2=o1.new
ClasaInterioara();
}
A)intr-o alta clasa nu se poate declara obiect de tipul clasei interioare
B) intr-o alt clasa se poate declara obiect de tipul clasei interioare in felul urmator: ClasaExterioara. Clasalnterioara o= new ClasaExterioara.Clasalnterioara():
C)intr-o alt clasa se poate declara obiect de tipul clasei interioare in felul urmator: Clasainterioara o=new Clasalnterioara();
D)Intr-o alta clasa se poate declaara obiect de tipul clasei interioare in felul urmator :ClasaExterioara o1=new ClasaExterioara(); ClasaExterioara.ClasaInterioara o2=o1.new ClasaInterioara();
E)variabila a, nu poate sã fie accesata din Clasalnterioara pentru ca este privata
4.Precizati ce va afisa urmatorul program:
public class SuperClasa {
protected int a;
private int x; public
SuperClasa(){
a=2; x=calcul();
}
public int calcul()
{
return a*a;
}
public String toString(){
return a+", "+x;
}
}
protected int a;
private int x; public
SuperClasa(){
a=2; x=calcul();
}
public int calcul()
{
return a*a;
}
public String toString(){
return a+", "+x;
}
}
public class SubClasa extends SuperClasa{
private int y; public SubClasa(){
y=calcul();
}
public int calcul()
{
return a*a*a;
}
public String toString()
{
return super.toString() + ", "+y;
}
}
public class Main {
public static void main(String[] args) {
SubClasa ob=new SubClasa();
System.out.println(ob);
} }
private int y; public SubClasa(){
y=calcul();
}
public int calcul()
{
return a*a*a;
}
public String toString()
{
return super.toString() + ", "+y;
}
}
public class Main {
public static void main(String[] args) {
SubClasa ob=new SubClasa();
System.out.println(ob);
} }
A)2,8,4
B)2,4,2
C)2,8,8
D)2,4,4
E)0,0,0
F)2,4,8
5.Precizati ce va afisa secventa:
public class OClasa {
private int x; private
static int y; public
OClasa(int x,int y)
{
this.x=x;
this.y=y;
}
public int getX() {
return x;
}
public static int getY() {
return y;
}
}
private int x; private
static int y; public
OClasa(int x,int y)
{
this.x=x;
this.y=y;
}
public int getX() {
return x;
}
public static int getY() {
return y;
}
}
public class Main {
public static void main(String[] args) {
OClasa ob1=new OClasa(1,2);
OClasa ob2=new OClasa(3,4); int
xx=ob1.getX()+ ob2.getX(); int
yy=ob1.getY()+ob2.getY();
System.out.println(xx+" "+yy);
}
}
public static void main(String[] args) {
OClasa ob1=new OClasa(1,2);
OClasa ob2=new OClasa(3,4); int
xx=ob1.getX()+ ob2.getX(); int
yy=ob1.getY()+ob2.getY();
System.out.println(xx+" "+yy);
}
}
A) secventa nu poate fi rulata
B)6 8
C)4 8
D)4 6
E)6 6
6.Selectati modul corect de declarare si instantiere al unei colectii de obiecte
de tip Set care poate contine doar intregi:
de tip Set care poate contine doar intregi:
A)Set< int >lista=new Set();
B)TreeSet< Integer > lista=new Set();
C)Set< Integer > lista=new TreeSet();
D)Set< int > lista=new TreeSet();
E)Set< int > lista=new HasSet();
F)Set< Integer > lista=new Set();
7.Selectati afirmatia corecta cu privire la codul de mai jos :
public interface Interfata {
int x=1;
public void metoda();
}
public class Implementare implements Interfata{
@Override
public void metoda() {
x++;
}
}
class Main{
public static void main(String[] args) {
Interfata i=new Implementare();
i.metoda();
System.out.println(i.x);
}
}
public interface Interfata {
int x=1;
public void metoda();
}
public class Implementare implements Interfata{
@Override
public void metoda() {
x++;
}
}
class Main{
public static void main(String[] args) {
Interfata i=new Implementare();
i.metoda();
System.out.println(i.x);
}
}
A)campul x nu este accesibil in linia 3 a functiei main
B)campul x nu este accesibil in functia numita metoda() din clasa Implementare
C)va afisa valoarea 2 pe ecran
D)va afisa valoarea 1 pe ecran
E)incrementarea din functia metoda() a clasei Implementare nu este permisa
F)instantierea din prima linie a functie main() este gresita
8.Selectati afirmatia corecta cu privire la urmatorul cod:
public class Actor <T,S>{
T nume;
S varsta;
@Override
public String toString() {
return "Actor{" +
"nume=" + nume +
", varsta=" + varsta +
'}';
}
public Actor(T nume, S varsta) {
this.nume = nume; this.varsta
= varsta;
}
}
public class Main {
public static void main(String[] args) {
Actor<String,Integer> actor= new
Actor<String,Integer>("Florin",22);
System.out.println(actor);
Actor<StringBuilder,Byte> actor2=new
Actor<StringBuilder, Byte>("Mihai",30);
System.out.println(actor2);
}
}
public class Actor <T,S>{
T nume;
S varsta;
@Override
public String toString() {
return "Actor{" +
"nume=" + nume +
", varsta=" + varsta +
'}';
}
public Actor(T nume, S varsta) {
this.nume = nume; this.varsta
= varsta;
}
}
public class Main {
public static void main(String[] args) {
Actor<String,Integer> actor= new
Actor<String,Integer>("Florin",22);
System.out.println(actor);
Actor<StringBuilder,Byte> actor2=new
Actor<StringBuilder, Byte>("Mihai",30);
System.out.println(actor2);
}
}
A)modul de instantiere al obiectului actor2 este gresit
B)modul de instantiere a obiectului actort este gresit
C) modul de instantiere al celor doua obiecte este gresit
D) nu se va afisa nimic pe ecran pentru ca a fost omis apelul metodei toString()
E)va afisa Florin 22 si Mihai 30 pe ecran
9.Relatia de mostenire dintre bean-urile cu Spring se realizeaza :
A)cu ajutorul atributul child al tagului bean
B)cu ajutorul atributului inheritance al tagului bean
C)cu ajutorul atributului parent al tagului bean
D)cu ajutorul atributului extends al tagului bean
10.Precizati ce va afisa secventa de mai jos:
Vector v=new Vector();
for(int i=0;i<8;i++)
{
v.add(i);
}
System.out.println(v.capacity()); }
Vector v=new Vector();
for(int i=0;i<8;i++)
{
v.add(i);
}
System.out.println(v.capacity()); }
A)7
B)1024
C)10
D)100
E)8
11.Cum poate raspunde un sevlet la cererea unui client?
A) cu ajutorul unui obiect de tip Form si a metodei sendParameter)
B) cu ajutorul unui obiect de tip HtmlForm si a metodei sendFormParameter()
C) cu ajutorul metodei clientResponse()
D)Cu ajutorul unui obiect de tip HttpServletResponse sa a unui obiect de tip PrintWriter
E) cu ajutorul unui vector de obiecte de tip FormResponse
12.Se considera tabela MySQL persoane cu coloanele id,nume varsta care
are introdusa in ea 3 randuri populate cu informatie si contine id
1,2,3.Precizati care va fi efectul liniilor de mai jos;
are introdusa in ea 3 randuri populate cu informatie si contine id
1,2,3.Precizati care va fi efectul liniilor de mai jos;
public class MainApp {
public static void main(String[] args) throws
SQLException {
String url =
"jdbc:mysql://localhost:3306/test?serverTimezone=UTC"
;
Connection connection =
DriverManager.getConnection(url, "root", "Root");
PreparedStatement ps =
connection.prepareStatement("select * from persoane
where id=?
");
ps.setInt(1,1
);
ResultSet rs=ps.executeQuery();
System.out.println(rs.getString(2));
}
}
public static void main(String[] args) throws
SQLException {
String url =
"jdbc:mysql://localhost:3306/test?serverTimezone=UTC"
;
Connection connection =
DriverManager.getConnection(url, "root", "Root");
PreparedStatement ps =
connection.prepareStatement("select * from persoane
where id=?
");
ps.setInt(1,1
);
ResultSet rs=ps.executeQuery();
System.out.println(rs.getString(2));
}
}
A) obiectul Prepared Statement nu permite rularea comenzilor SQL cu parametri
B) vor afisa numele persoanei care are id-ul 1
C)vor afisa varsta persoanei care are id-ul 1
D)Se incearca extragerea de informatie de dinaintea primului rand din obiectul ResultSet lucru care va produce exceptie
13.Alegeti afirmatia potrivita cu privire la urmatoarele linii de cod:
public class Main {
public static void main(String[] args) {
float f= 3.4444;
System.out.printf("%.2f",f);
}
}
public class Main {
public static void main(String[] args) {
float f= 3.4444;
System.out.printf("%.2f",f);
}
}
A)Secventa va genera eroare de compilare datorita incercarii de a initializa o variabila de tip float cu o valoare de tip double
B)seventa va genera eroare de compilare datorita apelului functiei printf,care nu exista in Java
C) seventa va afisa 3.44 pe ecran
D) seventa va genera eroare de compilare datorita utilizarii necorespunzatoare a funtiei printf
14. Se considera tabela MySQL persoane,care are trei coloane ce contin
intregi si 3 randuri de informatie .Precizati efectul urmatoarelor linii de cod
intr-o aplicatie care utilizeaza tehnologia JDBC.
intregi si 3 randuri de informatie .Precizati efectul urmatoarelor linii de cod
intr-o aplicatie care utilizeaza tehnologia JDBC.
public class MainApp {
public static void main(String[] args) throws
SQLException {
String url =
"jdbc:mysql://localhost:3306/test?serverTimezone=U
TC" ;
Connection connection =
DriverManager.getConnection(url, "root", "Root");
Statement statement = connection.createStatement();
ResultSet rs=statement.executeQuery("select *
from persoane
");
rs.first();
rs.updateInt(1
,30);
rs.updateRow()
;
public static void main(String[] args) throws
SQLException {
String url =
"jdbc:mysql://localhost:3306/test?serverTimezone=U
TC" ;
Connection connection =
DriverManager.getConnection(url, "root", "Root");
Statement statement = connection.createStatement();
ResultSet rs=statement.executeQuery("select *
from persoane
");
rs.first();
rs.updateInt(1
,30);
rs.updateRow()
;
}
}
}
A)codul actualizeaza valoarea din primul rand si a doua coloana a tabelei persoane
B)codul actualizeaza valoarea din primul rând si prima coloana a tabelei persoane obiectul statement
C)obiectul statement nu a fost instantiat corespunzator pentru ca operatia de actualizare sa fie operata cu succes
D) actualizarea nu se poate realiza pentru ca nu au fost introduse
15.Expresiile Lambda
A)implementeaza interfete cu o metoda abstracta
B)permit referirea unei metode prin nume fara a o apela
C)implementeaza interfete cu oricate metode abstracte
D)extind interfete care contin metode implicite
16. Metodele implicite in interfete care au fost introduse in Java 8:
A)sunt metode care trebuie redefinite in clasele care implementeaza interfetele care le contin
B.sunt metode cu cod care au atributul default
C)sunt metode cu cod care nu au nici un atribut
D)sunt metode abstracte care au atributul default
17. Selectati afirmatia corect cu privire la bean-urile:
A) un bean este un obiest care este crest te Spring framework cu ajutcrul metodei createNewBean()
B) un bean este un tag dint-un fiser XM care trebuie sa se numeasca in mod obigatoriu spring.cfg.xml.
C) un bean este un obiect creat cu ajutorul operatorului new
D) un bean este un obiect care este instantiat, asamblat si gestionat de un container Spring.Containerul creeaza astfel de obiecte pe baza metadatelor de configurare furnizate printr-un fisier XML sau cu ajutorul adnotatior.
18. O clasa abstracta poate fi:
A) extinsa doar de o clasa normala
B) extinsa doar de o alta clasa abstracta
C)extinsa de o altã clasa abstracta sau de o clasã normala
D) extinsa doar de o interfata
19. Se considera un formular HTML care apeleaza un servlet. Precizati cum pot fi extrase in serviet, valorile completate in formular.
A) cu ajutorul unui obiect de tip HttpServletRequest sí a metodel getParameter
B) cu ajutorul unui vector de obiecte de to FormParameter
C) cu ajutorul unui obiect de tip HtmlForm si a metodei getFormParameter()
D) cu ajutorul unui obiet de tip ServletContext
20.Intr-un TreeSet
A)Elementele sunt ordonate in ordine naturala sau cu ajutorul unui comparator
B)elementele se gasesc in ordinea adaugarii
C)elementele sunt puse intr-o ordine aleatorie
D)doar o parte din elemente sunt ordonate
21. Se considera un proiect web dinamic creat pe baza arhetipului mavenarchetype-webapp. Configurarea pagini de start a proiectului se realizeaza cu ajutorul fisierului:
A)web.xml
B)server.xml
C)pom.xml
D)orcarui fisier xml creat in proiect
22.Se considera clasa Test cu codul de mai jos.Precizati efectul rulalii
secventei din programul principal.
class Test {
int x=014;
void metoda()
{
this.x=+3;
}
}
secventei din programul principal.
class Test {
int x=014;
void metoda()
{
this.x=+3;
}
}
class Main {
public static void main(String[] args) {
Test t=new Test();
t.metoda();
System.out.println(t.x);
}
}
public static void main(String[] args) {
Test t=new Test();
t.metoda();
System.out.println(t.x);
}
}
A)va determina eroare de compilare pentru ca variabila x neavand modificator de acces este privata si deci neaccesibila din clasa MainApp
B)va afisa pe ecran 017
C)va afisa pe ecran 17
D) va afisa pe ecran 15
23.Care va fi valoarea variabilelei a dupa executarea liniilor de cod de mai
jos
class Main {
public static void main(String[] args) {
int a=3; a>>>=1;
jos
class Main {
public static void main(String[] args) {
int a=3; a>>>=1;
System.out.println(a);
} }
} }
A)1
B)2
C)9
D)linia de cod este gresita si va determina eroare de compilare
E)0
24.Precizati care este efectul urmatoarei secvente de cod:
class Main {
public static void main(String[] args) {
var lista= List.of("Arad","Timisoara");
lista.add("Ineu");
lista.forEach(System.out::println);
} }
class Main {
public static void main(String[] args) {
var lista= List.of("Arad","Timisoara");
lista.add("Ineu");
lista.forEach(System.out::println);
} }
A)Se va afisa Arad, Timisoara, Ineu in consola
B)Se va afisa Arad, Ineu, Timisoara in consola
C)Se va produce eroare de compilare pentru ca in loc de var trebuia scris List< String>
D)Se va produce exceptie pentru ca nu este permisa adaugarea unui element la colectie
E) Se va produce exceptie pentru ca nu au fost puse paranteze rotunde dupa apelul lui println
25.Precizati efectul rularii secventei:
class Main {
public static void main(String[] args) {
Integer a=new Integer(4);
int b=3; a=b;
System.out.println(a);
}
}
class Main {
public static void main(String[] args) {
Integer a=new Integer(4);
int b=3; a=b;
System.out.println(a);
}
}
A)va afisa 4 pe ecran
B) va genera eroare de compilare datorita incercarii de a atribui unui obiect o valoare primita
C)va afisa 3 pe ecran
26.Precizati efectul rularii secventeii:
class Main {
public static void main(String[] args) {
int []tab=new int[3]; tab[0]=9;
tab[1]=8; tab[2]=7; tab[3]=10;
System.out.println(tab.length);
} }
class Main {
public static void main(String[] args) {
int []tab=new int[3]; tab[0]=9;
tab[1]=8; tab[2]=7; tab[3]=10;
System.out.println(tab.length);
} }
A) va produce eroare de compilare pentru cã operatorul length nu exista, trebuia folosit operatorul size
B)va determina producerea exceptei ArrayIndexOutOfBoundsException
C) va afisa 4 pe ecran
D) va produce eroare de compilare pentru ca vectorul trebuia declarat: int tab[3];
E) va afisa 3 pe ecran
F) va afisa 10 pe ecran
27.Precizati ce va afisa secventa :
class Main {
public static void main(String[] args) {
int []a={4,5,6}; int []b={1,2,3};
b=a; a[0]=5;
System.out.println("a[0] = "+a[0]+" b[0] =
"+b[0]);
}
}
class Main {
public static void main(String[] args) {
int []a={4,5,6}; int []b={1,2,3};
b=a; a[0]=5;
System.out.println("a[0] = "+a[0]+" b[0] =
"+b[0]);
}
}
A)a[0]=5 b[0]=1
B)a[0]=5 b[0]=4
C)va genera eroare de compilare atribuirea b=a; nefiind permisa
D)a[0]=5 b[0]=5
28.Precizati efectul liniilor de cod de mai jos:
public record Punct(int x,int y) {
}
class Main {
public static void main(String[] args) {
Punct p1=new Punct(1,2);
Punct p2=new Punct(1,2);
if(p1.equals(p2))
{
System.out.println("Egale");
}
else {
System.out.println("Diferite");
}
System.out.println(p1.x()+" , "+p1.y());
}
}
public record Punct(int x,int y) {
}
class Main {
public static void main(String[] args) {
Punct p1=new Punct(1,2);
Punct p2=new Punct(1,2);
if(p1.equals(p2))
{
System.out.println("Egale");
}
else {
System.out.println("Diferite");
}
System.out.println(p1.x()+" , "+p1.y());
}
}
A)Codul va produce eroare de compilare pentru cã tipul record nu exista in Java, trebuia creatã o clasa
B)Codul va produce eroare de compilare pentru cã variabilele x si y sunt accesate in mod eronat prin sintaxa p1.x) si p1.y) in ultima afisare, accesul corect ar fi fost p1.x si p1.y
C)Se va afisa mesajul Egale pe ecran urmat de valorile 1,2
D) Codul determina eroare de compilare pentru ca se apeleazã metoda equals pe care record-ul Punct nu o are
E) Se va afisa mesajul Diferite pe ecran pentru ca referintele celor doua obiecte sunt diferite, urmat de valorile 1, 2
29.Se considera clasa Persoana cu variabilele membre private nume si varsta gettere pentru accesul variabilelor membre si metoda toString redefnita.Se considera o colectie de obiecte de tip List in care s au adaugat 3 persoane Precizati efectul urmatoarelor linii de cod:
class Main
{ public static void main(String[] args)
{ List persoane=new ArrayList<>();
persoane.add(new Persoana("Ion",15));
persoane.add(new Persoana("Mihaela",16));
persoane.add(new Persoana("Carmen",15)); }
public static void functie(List persoane)
{ persoane .stream() .map(Persoana::getVarsta) .filter(p -> p.getVarsta()<20) .ifPresentOrElse(System.out::println,()-> System.out.println("Nu e nici o persoana")); } }
A) Afiseaza numele si varsta primei persoane care are sub 20 de ani sau mesajul Nici o persoana, in functie de continutul listei
B)Afiseaza vârsta primei persoane care are sub 20 de ani, sau mesajul Nici o persoana, in functie de continutul listei
C)Conditia de filtrare este scrisa gresit in contextul actual si va produce eroare
D) Ultima expresie Lamda este scrisa gresit si va produce eroare de compilare
30.Precizati cum va rula secventa:
class Main {
public static void main(String[] args) {
int a[]={4,3,2}; afiseaza(a);
}
static void afiseaza(var vector)
{
for(Integer x:vector)
{
System.out.println(x);
}
} }
class Main {
public static void main(String[] args) {
int a[]={4,3,2}; afiseaza(a);
}
static void afiseaza(var vector)
{
for(Integer x:vector)
{
System.out.println(x);
}
} }
A)Secventa va afisa valorile 4,3,2 pe ecran
B)Secventa va produce eroare de compilare datorita utilizarii necorespunzatoare a lui var
C)Secventa va afisa valorile 0,1,2 pe ecran
D) Seventa va produce eroare de compilare datorita utilizarii necorespunzätoare a lui static
{"name":"Grila PJ", "url":"https://www.quiz-maker.com/QPREVIEW","txt":"1.Se considera clasele public class Persoana {String nume; publicPersoana(){nume=\"Danut\";}}public class Inginer extends Persoana{}public class Main {public static void main(String[] args) {Inginer i=new Inginer();System.out.println(i.nume);}} Precizati cum va functiona programul principal:, 2.Precizati efectul urmatoarei secvente: String s= \"ABCDE\";s.toLowerCase();System.out.println(s[1]);, 3.Se considera clasele imbricate de mai jos: class ClasaExterioara {\/\/Outer classprivate int a=3;class ClasaInterioara{\/\/Inner classprivate int b=4;public void afisare(){System.out.println(\"a=\" +a+\"b=\"+b);}}}class Main{public static void main(String[] args) {ClasaExterioara o1=new ClasaExterioara();ClasaExterioara.ClasaInterioara o2=o1.newClasaInterioara();}","img":"https://www.quiz-maker.com/3012/images/ogquiz.png"}