ОО2/Јул 2023

Извор: SI Wiki
Пређи на навигацију Пређи на претрагу

Julski rok 2023. godine

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

1. zadatak

Odabrati tačne tvrdnje za jezik Java.

  1. Naredbe static final int a = 1; i const int a=1; su ekvivalentne.
  2. JVM pruža zaštitu od virusa koji bi se prenosili kroz izvršni kod.
  3. Prenosivost programa se postiže bajtkodom koji se interpretira na isti način od strane JVM na različitim platformama.
  4. Svaki prost tip podataka je uvek iste veličine na svim platformama.
  5. Imena promenljivih mogu da se pišu ćirilicom.

2. zadatak

Šta sme da stoji umesto #### da bi se sledeći izvorni program napisan na programskom jeziku Java uspešno preveo?

package prvi;
public class A {
    private int a;
    int b;
    protected int c;
    public int d;
}
package drugi;
import prvi.A;
public class B extends A {
    public void f() {
        ####
    }
}
  1. b = 1;
  2. super.a = 1;
  3. a = 1;
  4. c = 1;
  5. d = 1;

3. zadatak

Koje od sledećih tvrdnji su tačne za programski jezik Java?

  1. Referenca super može da se koristi za pristup nestatičkim članovima klase koji nisu privatni.
  2. Referenca super može da se koristi u nestatičkim metodama klase.
  3. Referenca super može da se koristi u statičkim metodama klase.
  4. Poziv metoda preko reference super je polimorfan.
  5. Referenca super predstavlja referencu na podobjekat tekućeg objekta tipa neposredne natklase.

4. zadatak

Koja od sledećih tvrdnji su tačne za metod f() interfejsa I na programskom jeziku Java?

public interface I {
    void f();
}
  1. Metod je implicitno označen modifikatorom static.
  2. Metod je implicitno označen modifikatorom final.
  3. Metod je implicitno označen modifikatorom abstract.
  4. Metod je implicitno označen modifikatorom public.
  5. Metod je implicitno označen modifikatorom protected.

5. zadatak

Koje od sledećih tvrdnja su tačna za programski jezik Java?

  1. Moguće je bacati neproverene izuzetke naredbom throw.
  2. Korisnički definisan tip izuzetka direktno izveden iz klase Exception predstavlja neprovereni izuzetak.
  3. Korisnički definisan tip izuzetka direktno izveden iz klase Throwable predstavlja neprovereni izuzetak.
  4. Izuzetak izveden iz klase Error predstavlja neprovereni izuzetak.
  5. Korisnički definisan tip izuzetka direktno izveden iz klase RuntimeException predstavlja neprovereni izuzetak.

6. zadatak

Koje od sledećih tvrdnja su tačna za programski jezik Java?

  1. Metodi spoljašnje klase imaju pravo pristupa članovima ugnježdene klase označenim pravom pristupa private.
  2. Metodi klase koja proširuje ugnježdenu klasu imaju prava pristupa članovima njene spoljašnje klase.
  3. Metodi unutrašnje klase imaju mogućnost pristupa direktnim imenovanjem isključivo statičkim članovima spoljašnje klase.
  4. Klasa ugnježdena u interfejs je podrazumevano statička.
  5. Metodi ugnježdene klase imaju pravo pristupa članovima spoljašnje klase označenim pravom pristupa private.

7. zadatak

Šta ispisuje sledeći program napisan na programskom jeziku Java, ukoliko operacije += i -= nisu atomične?

class Racun {
    int stanje;
    public Racun(int stanje) { this.stanje = stanje; }
    
    public void uvecaj (int iznos) { stanje += iznos; }
    public void umanji(int iznos) { stanje -= iznos; }
}
public class Test {
    public static void main(String[] args) {
        Racun racun = new Racun(0);
        Runnable r1 = () -> { for(int i = 0; i < 5; i++) racun.uvecaj (100); };
        Runnable r2 = () -> { for(int i = 0; i < 5; i++) racun.umanji (100); };
        Thread uplata = new Thread(r1);
        Thread isplata = new Thread(r2);
        uplata.start(); 
        isplata.start();
        try {
            uplata.join();
            isplata.join();
        } catch(InterruptedException e){}
        System.out.println("Vrednost stanja je: " + racun.stanje);
   }
}
  1. Ispis ne može jedinstveno da se odredi.
  2. Vrednost stanja je: -500
  3. Vrednost stanja je: 0
  4. Vrednost stanja je: 500

8. zadatak

Za svaki od sledećih metoda navesti iz kog interfejsa AWT osluškivača potiče.

  1. focusGained FocusListener
  2. actionPerformed ActionListener
  3. itemStateChanged ItemListener

9. zadatak

Koja datoteka se kreira prevođenjem sledećeg programskog koda na operativno sistemu Windows, koji se nalazi u datoteci Program.cs?

class ZdravoSvete {
    public static void Main(string[] args) {
        System.Console.Write("Zdravo Svete!");
    }
}
  1. Program.exe
  2. ZdravoSvete.jar
  3. Program.jar
  4. ZdravoSvete.exe
  5. Main.jar
  6. Main.exe

10. zadatak

Šta ispisuje sledeći program na programskom jeziku C#? (Za program koji se ne prevodi uneti NP. Za program sa greškom u izvršavanju uneti X)

using System;
public class Pozdrav {
    public static void Main(string[] args) {
        int num = 1;
        switch(num) {
            case 0: Console.Write("0");
            case 1: Console.Write("1");
            case 2: Console.Write("2");
            default: Console.Write("d");
        }
    }
}

Одговор: NP