ОО2/Пробни тестови 2021
- За питања са више одговора, тачни одговори су подебљани и уоквирени.
- За питања за које се одговори уносе, тачни одговори су подвучени и сакривени: овако.
- Притисните на следеће дугме како бисте их сакрили или открили:
Колоквијум - самотестирање
На сваком питању је било или могуће изабрати једно или више решења или унети одговор у поље.
1. задатак
Које тврдње за језик Јава су тачне?
- Интерпретирање бајткода је по правилу ефикасније од извршења програма на машинском језику.
- ЈИТ (Јуст Ин Тиме) преводилац преводи изворни код програма у бајткод.
- лмплементација виртуелне машине зависи од конкретне платформе, али интерфејс према бајткоду остаје исти.
- Изворни код програма се интерпретира од стране виртуелне машине.
- Изворни код програма се назива бајткод.
2. задатак
Шта исписује следећи програм?
public class A {
public static void main(String[] args) {
String str1 = "abc", str2 = "abc", str3 = "ab" + "c", str4 = new String("abc");
System.out.println(str1==str2);
System.out.println(str1==str3);
System.out.println(str1==str4);
}
}
Изаберите један одговор:
false false falsefalse false truetrue false falsetrue true falsetrue true true
3. задатак
Дат је следећи програм:
public class Primer{
int polje;
static void f(Object o){
if(o instanceof Primer)
((Primer)o).polje = 1;
else if (o instanceof Integer)
o = 0;
}
public static void main(String[] args){
Primer p = new Primer();
Integer i = 0;
f(p);
f(i);
System.out.println(p.polje + " " + i);
}
}
Одабрати тачан одговор Изаберите један одговор:
- Код је синтаксно неисправан.
- Програм исписује вредности
0 0. - Програм исписује вредности
0 1. - Програм исписује вредности
1 0. - Програм исписује вредности
1 1.
4. задатак
За пакете на језику Јава важи:
- Постоје типови који могу припадати већем броју пакета.
- Свака класа мора бити део неког пакета.
- Увожењем пакета не увозе се и сви потпакети тог пакета.
- Све класе које се налазе у истој датотеци су део истог пакета.
- Пакет
java.langсе аутоматски увози. - У датотеци може постојати више наредби:
packageназив_пакета;
5. задатак
Које тврдње су тачне за нестатичке иницијализационе блокове?
- Извршавају се након извршавања конструктора своје класе.
- Могу бацати изузетке.
- Може их бити више у једној класи.
- Извршавају се након пуњења класе у меморију, а пре стварања првог објекта дате класе.
- Извршавају се након извршавања конструктора наткласе.
6. задатак
Шта исписује следећи програм на програмском језику Јава? Уписати 0 уколико се програм не преводи, односно 1 уколико постоји грешка у време извршавања програма.
class A {
private void m() {
System.out.print("a");
}
public A() {
m();
}
}
class B extends A {
public void m() {
System.out.print("b");
}
public B() {
m();
}
}
public class Test {
public static void main(String args[]) {
new B();
}
}
Одговор:
7. задатак
Модификатор абстрацт је могуће ставити испред дефиниције:
- метода
- класе
- интерфејса
- набрајања
- поља класе
8. задатак
Шта важи за тхроw на програмском језику Јава?
- Може се користити у статичким иницијализационим блоковима.
- Представља оператор језика Јава.
- Параметар му је референца на објекат класе која мора бити изведена из класе Еxцептион.
- Може се користити без параметра.
- Представља кључну реч језика Јава.
9. задатак
Уколико су дефинисани следећи интерфејси:
interface I1 {int m(int i);}
interface I2 {int m(int i, int k, int j);}
interface I3 {double m(int n);}
interface I4 {double m(double x, double y);}
interface I5 {int m(int i);}
које од наведених наредби су исправне?
int i=1,j=2; I5 i5=(i+j)->i*j;I3 i3=k->{double p=1; for (int i=1; i<=k; p*=i++); return p;};I2 i2=(x,y,z)->x+y-z;I4 i4=(a,b)->{a*b};I1 i1=n->n+5;
10. задатак
Која тврђења су тачна на програмском језику Јава?
- Ако је пре уласка у
wait()позван методnotifyAll()за исти објекат, нит која позиваwait()неће бити блокирана. - По уласку у
wait(), нит се блокира (суспендује) и ослобађа се брава објекта. - Методи
wait(),notify()иnotifyAll()морају да се позивају уз синхронизованих делова кода. - Метод
notify()буди само једну нит и то увек ону која је најдуже чекала. wait()је метод класеThread.