NPRG021: Pokrocila Java [zkouska, 11. 6. 2018]

Peter_Guba

NPRG021: Pokrocila Java [zkouska, 11. 6. 2018]

Příspěvek od Peter_Guba »

Skúška bola viac-menej to isté, ako normálna java. 10 otázok, prvých 8 malo niekoľko možností a posledné dve boli napísať kód. V tých prvých ôsmich bolo:
1. kľúčové slovíčka
2. máme List<String> ls, List<Object> lo, Collection<Object> a Collection<Object> co a Collection<?> c, aké priradenia možno spraviť? : a) lo = ls b) co = ls c) co = lo d) c = ls (správne sú c) a d))
3. kde vyhodí nasledujúci kód chybu? Collection<? extends T> c = new ArrayList<>();
c.add();
a) v prvom riadku, zlé priradenie b) v prvom riadku, už neviem prečo c) v druhom riadku, nemožno do c pridávať d) nevyhodí chybu (správne je c))
4. vybrať pravdivé tvrdenia o natívnych metódach
5. máme anotáciu @interface Copyright { String value() default "neviemčo"; }, čo z nasledujícich príkazov je v pohode? : a) @Copyright b) @Copyright("me") c) @Copyright(value = "me") d) @Copyright{setValue("me");} (správne sú a), b) a c))
6. máme triedu Foo v balíčku foo, aký kód do Stringu name správne priradí men tejto triedy? : a) String name = Foo.class.getName() b) String name = foo.getClass().getName() c) String name = foo.class.getName()
d) String name = Class.forName("foo.Foo").getName() (správne je všetko okrem c))
7. ktorý z nasledujúcich kódov je v pohode? : a) class Foo <T> {public T bar() {return null;}} b) class Foo <T> {public static T bar() {return null;}} c) class Foo <type T> {public T bar() {return null;}}
d) class Foo <T> {private T t; public T bar() {return t;}} (správne sú a) a d))
8. vybrať pravdivé výroky o vláknach

A tie s kódom boli niečo v zmysle:
1. ako bude po "erasure" vyzerať metóda public static <T extends Comparable<T>> meh(T t) {...} (toto funguje tak, že namiesto T sa dosadí Comparable<Object>)
2. máme triedu Person, ktorá má metódu public String getName() a triedy Student, Teacher atď, ktoré dedia od triedy Person, napíšte metódu, ktorá dostane kolekciu objektov triedy Person, alebo jej podtriedy a vypíše mená všetkých elementov (to by malo byť niečo ako public printer(Collection<? extends Person> c){for(Person p: c) {System.out.println(p.getName());}})
Odpovědět

Zpět na „Ostatní“