ОО2/К1 2024

Извор: SI Wiki
< ОО2
Датум измене: 28. април 2024. у 14:05; аутор: KockaAdmiralac (разговор | доприноси) (KockaAdmiralac преместио је страницу OO2/K1 2024 на ОО2/К1 2024 без остављања преусмерења: Ćirilica)
Пређи на навигацију Пређи на претрагу

К1 2024. године одржан је 22. марта и трајао је 20мин.

  • За питања са више одговора, тачни одговори су подебљани и уоквирени
  • За питања за које се одговори уносе, тачни одговори су подвучени и сакривени, тако да се прикажу када изаберете тај текст (пример: овако)
  • Притисните лево дугме испод за сакривање и откривање свих одговора, или десно дугме за укључивање и искључивање интерактивног режима:

1. задатак

Шта је све тачно за програмски језик Јава?

  1. Интерпретирање бајтокода је слабијих перформанси од извршавања машинског кода.
  2. Јава виртуелна машина представља интерпретер за бајткод.
  3. Превођењем изворног кода добије се интерпретативни бајткод.
  4. Имплементација Јавине виртуелне машине је независна од платформе.
  5. Бајткод зависи од платформе на којој се врши превођење изворног кода.

2. задатак

Које од наведених имплицитних конверзија су дозвољене у програмском језику Јава?

  1. Конверзија података типа бyте у тип инт
  2. Конверзија података типа инт у тип лонг
  3. Конверзија података типа инт у тип схорт
  4. Конверзија података типа флоат у тип доубле
  5. Конверзија података типа доубле у тип флоат

3. задатак

Шта исписује следећи програм на програмском језику Јава?

public class Main {
    private static void f(Object a, Integer b, int c) {
        a = 0;
        b = b + 1;
        c = c - 1;
    }
    public static void main(String[] args) {
        Integer a = 1, b = 1, c = 1;
        f(a, b, c);
        System.out.println(a + "," + b + "," + c);
    }
}

Одговор: 1,1,1

Објашњење: У Јави се аргументи, укључујући референце преносе по вредности. Тако да су у методи ф копије референци на а и б добиле нове вредности, али не и саме референце а и б

4. задатак

Шта све могу да садрже класе на програмском језику Јава?

  1. Дескрукторе
  2. Преклопљене операторске функције
  3. Дефиниције интерфејса
  4. Иницијализационе блокове
  5. Дефиниције класних типова

5. задатак

Шта све може да стоји уместо ### да би се следећи код успешно писан на језику Јава успешно превео?

class B {
    B b1;
    static B b2;
    public static void s() {}
    public void m() {}
    public static void test() {
        ###
    }
}
  1. Објецт о = б2
  2. м()
  3. Б.с()
  4. Објецт о = б1
  5. б1.м()

6. задатак

Написати наредбу на језику Јава којом се увозе сви типови из пакета пакет Одговор: импорт пакет.*;

7. задатак

Које од следећих тврдњи су тачне за пакете на програмском језику Јава?

  1. Класе у пакету могу да имају само приватно или јавно право приступа.
  2. Типови декларисани у изворној датотеци без декларације пакета биће смештени у безимени пакет.
  3. Декларација пакета пацкаге а.б; може да постоји чак и ако ни у једном фајлу са изворним кодом програма не постоји декларација пакета пацкаге а;.
  4. Пакет јава.утил се увози имплицитно.
  5. Подразумевано право приступа методима је пакетско, а пољима класа приватно.

8. задатак

Шта исписује следећи програм на програмском језику Јава?Уписати НП уколико се програм не преводи.

package test;
class B {
    public void m(D x) {
        System.out.print(1);
    }
}
class D extends B {
    public void m(D x) {
        System.out.print(2);
    }
}
public class Test {
    public static void main(String[] args) {
        B b = new B();
        b.m(new D());
        b = new D();
        b.m(new D());
    }
}

Одговор: 12

Објашњење: Код позива метода се гледа тип објекта, не тип референце

9. задатак

Шта исписује следећи програм на програмском језику Јава?Уписати НП уколико се програм не преводи.

package p;
public class A {
    protected int pi;
}
package q;
import p.A;
public class B extends A {
    public void m() {
        ###
    }
}
package q;
public class C extends A {}
  1. Б б = неw Б(); б.пи = 1;
  2. пи = 1
  3. супер.пи = 1
  4. C ц = неw C(); ц.пи = 1;
  5. А а = неw А(); а.пи = 1;

Објашњење: Права приступа за референце на објекте који нису тхис је иста за све класе

5. задатак

Да би класа X безусловно подржала клонирање и обезбедила да и изведене класе из ње морају да подрже клонирање, поред тога што треба да имплементира интерфејс Цлонеабле, потребно је и да надјача метод цлоне на начин:

  1. протецтед X цлоне () {...}
  2. публиц X цлоне() {...}
  3. протецтед X цлоне () тхроwс ЦлонеНотСуппортедЕxцептион {...}
  4. публиц X цлоне () тхроwс ЦлонеНотСуппортедЕxцептион {...}