SEARCH
You are in browse mode. You must login to use MEMORY

   Log in to start

level: Level 1

Questions and Answers List

level questions: Level 1

QuestionAnswer
Co reprezentují instance třídy java.io.File? ● Abstraktní cestu k souboru či složce ● Data uložená v souborech, které jsou uloženy ve vnější paměti (disk, flash ...) a uspořádány do stromové struktury ● Data uložená na disku● Abstraktní cestu k souboru či složce
Identifikátor v Javě může obsahovat: ● podtržítko _ ● ampersand & ● mezeru ● číslice ● zavináč @● podtržítko _ ● číslice
Identifikátor emanuel obsahuje odkaz na instanci třídy Motýl, která implementuje rozhraní ObyvatelLouky. Které z následujících podmínek vrátí hodnotu true? ● emanuel instanceof Motyl ● emanuel instanceof Serializable ● emanuel instanceof Object ● emanuel instanceof Cloneable ● emanuel instanceof ObyvatelLouky● emanuel instanceof Motyl ● emanuel instanceof Object ● emanuel instanceof ObyvatelLouky
Jak dělíme datové proudy? ● vstupní x výstupní ● datové proudy nijak nedělíme ● bajtové x znakové ● otevřené x zavřené ● soubory x složky (Datové proudy pro Otevření a uzavření souboru v C a C++)● vstupní x výstupní ● bajtové x znakové
Jako typ návratové hodnoty metody může být uvedeno: ● pole prvků primitivních datových typů ● pole prvků objektových (referenčních) typů ● jakýkoli objektový (referenční) typ ● typ void● pole prvků primitivních datových typů ● pole prvků objektových (referenčních) typů ● jakýkoli objektový (referenční) typ ● typ void
Je dána deklarace proměnných int cislo; int desítky; Který z následujících kódů získá do proměnné desítky číslici z pozice desítek v proměnné cislo ? (Například aby pro cislo=1234 bylo desitky=3.) ● desitky = (cislo % 100)/10 ● desitky = (cislo/ 100)*10 ● desitky = (cislo/10)%10 ● desitky = cislo/10● desitky = (cislo % 100)/10 ● desitky = (cislo/10)%10
K čemu se v Javě používá identifikátor: ● Pro pojmenování metody ● Pro pojmenování klíčových slov ● Pro pojmenování proměnné ● Pro pojmenování balíčku● Pro pojmenování metody ● Pro pojmenování proměnné ● Pro pojmenování balíčku
Kde se v javě používají složené závorky? ● pro ohraničení deklarace třídy nebo rozhraní ● jako operátor přetypování ● ve výrazech pro označení priority operací ● při volání metody při uvádění skutečných parametrů metody ● v deklaraci metody pro ohraničení seznamu formálních parametrů ● při přístupu k prvku vícerozměrného pole ● v příkazech selekce a iterace pro uvedení podmínek● pro ohraničení deklarace třídy nebo rozhraní
Kde se v Javě používají kulaté závorky? ● v deklaraci metody pro ohraničení seznamu formálních parametrů ● při volání metody při uvádění skutečných parametrů metody ● pro ohraničení bloku příkazů ● při určení pořadí položky uvnitř pole● v deklaraci metody pro ohraničení seznamu formálních parametrů ● při volání metody při uvádění skutečných parametrů metody
Která tvrzení o seznamech (třídách implementujících rozhraní List<E>) jsou pravdivá a která nepravdivá? - Seznam může obsahovat prvky primitivních typů - Seznamy udržují pořadí prvků a je možné používat indexy. - Seznamy mohou obsahovat libovolný počet shodných prvků - Seznamy není možné procházet pomocí klasického cyklu for. - Všechny prvky v seznamu jsou stejného typu nebo jeho podtypů. - Pomocí metody add s jedním parametrem vkládáme prvek na konec seznamu. - Indexy v seznamu jsou číselné a začínají od 1. - V seznamech jsou jako indexy používány řetězce.Pravdivá: - Seznamy udržují pořadí prvků a je možné používat indexy. - Seznamy mohou obsahovat libovolný počet shodných prvků - Všechny prvky v seznamu jsou stejného typu nebo jeho podtypů. - Pomocí metody add s jedním parametrem vkládáme prvek na konec seznamu.
Která z uvedených pravidel musí platit pro implementaci metody equals()? - Musí být tranzitivní: pokud x.equals(y) vrátí true a y.equals(z) také true pak musí x.equals(z) vrátit true. - Musí být symetrická: pokud x.equals(y) vrátí true, musí y.equals(x) vrátit true. - Pro x, které není null, musí x.equals(null) vrátit false - Pro x, které je rovné null, musí x.equals(null) vrátit true.- Musí být tranzitivní: pokud x.equals(y) vrátí true a y.equals(z) také true pakmusí x.equals(z) vrátit true. - Musí být symetrická: pokud x.equals(y) vrátí true, musí y.equals(x) vrátit true. - Pro x, které není null, musí x.equals(null) vrátit false
Která z následujících pravidel musí platit pro implementaci metody hashCode()? - Pokud zavoláte metodu hashCode() několikrát za sebou pro tutéž instanci, musí se vždy vrátit stejný výsledek. - Pokud jsou si dvě instance rovny (metoda equals() při jejich porovnání vrátí true), musí metoda hashCode pro obě instance vrátit stejné číslo. - Pokud metoda hashCode() pro dvě instance vrátí stejné číslo, znamená to, že jsou tyto instance shodné (metoda equals() při jejich porovnání vrátí true). - Pokud jsou dvě instance shodné (metoda equals() vrátí true), musí metoda hashCode() pro tyto instance vrátit hodnotu 0. - Pro dvě rozdílné instance (metoda equals() při jejich porovnání vrátí false) nesmí metoda hashCode() vrátit stejnou hodnotu.- Pokud zavoláte metodu hashCode() několikrát za sebou pro tutéž instanci, musí se vždy vrátit stejný výsledek. - Pokud jsou si dvě instance rovny (metoda equals() při jejich porovnání vrátí true), musí metoda hashCode pro obě instance vrátit stejné číslo.
Které modifikátory přístupu lze použít u datových atributů? - Private - protected - public - modifikátor přístupu neuveden- Private - protected - public - modifikátor přístupu neuveden
Které modifikátory přístupu je možné použít u metod instancí? - Private - protected - public - modifikátor přístupu neuveden- Private - protected - public - modifikátor přístupu neuveden
Které z následujících / uvedených metod jsou definované ve třídě Object? - toString() - clear() - hashCode() - getName() - equals() - size() - get Class() - finalize() - clone()- toString() - hashCode() - equals() - get Class() - finalize() - clone()
Které z následujících cyklů se provedou právě 6× (šestkrát)? - for (int i=1; i<12; i=i+2) - for (int i=-2; i<=10; i=i+2) - for (int i=-5; i<=5; i=i+2) - for (int i=6; i>=0; i--) - for (int i=7; i>-11; i=i-3) - for (int i=0; i<=6; i++) - for (int i=1; i<=6; i++) - for (int i=0; i<6; i++)- for (int i=1; i<12; i=i+2) - for (int i=-5; i<=5; i=i+2) - for (int i=7; i>-11; i=i-3) - for (int i=1; i<=6; i++) - for (int i=0; i<6; i++)
Který z následujících identifikátorů je platný v JAVĚ? - MOJE_KONSTANTA - 5prstu - celeCislo - this - Něco - MoješikovnáMetoda- MOJE_KONSTANTA - celeCislo - Něco - MoješikovnáMetoda
Máme dva textové řetězce:String s1="Praha"; String s2="praha"; Které vrátí hodnotu True ? - s1.length() == s2.length() - s1.length() != s2.length() - s1.toUpperCase().equals (s2.toUpperCase(); - s1.equals(s2)- s1.length() == s2.length() - s1.toUpperCase().equals (s2.toUpperCase();
Při kterých použití ve stejné třídě vznikne chyba (při překladu nebo za běhu programu): //předpokládám, že metoda vrací float nebo double ● vratCislo(); ● int cislo = vratCislo(); ● String cislo = vratCislo(); ● double cislo = vratCislo();● int cislo = vratCislo(); //chyba za překladu, possible loss of precision ● String cislo = vratCislo(); //chyba za překladu, incompatible types
Mezi základní objektové vlastnosti patří: - dědičnost - možnost definování tříd objektů - komunikace objektů (posílání zpráv, volání metod) - existence objektů (instancí) - zapouzdření a ukrývání implementace- dědičnost - možnost definování tříd objektů - komunikace objektů (posílání zpráv, volání metod) - existence objektů (instancí) - zapouzdření a ukrývání implementace
Modifikátor final může být uveden: - V záhlaví třídy - v záhlaví konstruktoru - v záhlaví metody - U parametru metody - u formálního parametru metody- V záhlaví třídy - v záhlaví metody - u formálního parametru metody
Nekonečný cyklus while (true) { ..... } lze uvnitř bloku (cyklu) ukončit: - vyvoláním výjimky pomocí - příkazem continue - příkazem break - pomocí příkazu goto - příkazem return - zavoláním metody System.exit(0)- vyvoláním výjimky pomocí - příkazem break - pomocí příkazu goto - příkazem return - zavoláním metody System.exit(0)
Označte dvojice hlaviček metod, ve kterých se jedná o přetížení metod v rámci jedné třídy: - void metoda ( ) { ... a void metoda ( int pocet) { ... - void metoda (double stranaA) { ... a void metoda (double stranaB) { ... - void metodaA (double stranaA) { ... a metodaA (double stranaB) { ... - void metodaA ( ) { ... a void metodaB ( ) { ...- void metoda ( ) { ... a void metoda ( int pocet) { ...
Označte části počítače, které jsou součástí historického von Neumannova schématu počítače: - Vstupně-výstupní zařízení - Komunikační zařízení - Řídící obvody (ŘADIČ) - Monitor - Paměť - Pevné disky- Vstupně-výstupní zařízení - Řídící obvody (ŘADIČ) - Paměť
Označte pravdivá a nepravdivá tvrzení o konstruktorech: - Při psaní konstruktoru potomka lze volat předka pomocí super(..) - Při vytváření instance se provádí konstruktor, ostatní metody pouze pokud jsou volány z konstruktoru - V hlavičce konstruktoru musí být uvedeno jméno třídy - Konstruktory nelze přetěžovat - Konstruktor nelze volat ze statických metod - Provádění konstruktoru nelze ukončit pomocí příkazu returnPravdivá: - Při psaní konstruktoru potomka lze volat předka pomocí super(..) - Při vytváření instance se provádí konstruktor,ostatní metody pouze pokud jsou volány z konstruktoru - V hlavičce konstruktoru musí být uvedeno jméno třídy
Označte pravdivá tvrzení o debugeru v Javě: - Zarážky se používají pro vyznačení místa, kde se provádění kódu má přerušit. - Krokování kódu označuje činnost, kdy programátor v debugeru sledujeprovádění kódu po jednotlivých řádcích - stisknutím tlačítka volí okamžik,kdy se má provést další řádek. - Při zastavení provádění kódu lze vidět v debugeru hierarchie volání metod. - Pokud se zastaví provádění kódu, lze v debugeru zobrazit obsah datových atributů a lokálních proměnných. - Pomocí krokování kódu v debugeru se nejčastěji testuje veřejné rozhraní (API) třídy. - Při krokování kódu lze v debugeru změnit průběh provádění kódu (např. přeskočit některé příkazy).- Zarážky se používají pro vyznačení místa, kde se provádění kódu má přerušit. - Krokování kódu označuje činnost, kdy programátor v debugeru sledujeprovádění kódu po jednotlivých řádcích - stisknutím tlačítka volí okamžik,kdy se má provést další řádek. - Při zastavení provádění kódu lze vidět v debugeru hierarchie volání metod. - Pokud se zastaví provádění kódu, lze v debugeru zobrazit obsah datových atributů a lokálních proměnných.
Označte ty hodnoty proměnné x, pro které je splněna následující podmínka: (x>2 && x<10) || ( x>5 && x <15) ● 6 ● 15 ● 5 ● 3 ● 9 ● 11x= 6; 5; 3; 9; 11
Označte ty hodnoty proměnné x, pro které je splněna následující podmínka: ( x>0 && x<6 ) || ( x>6 && x<10 ) ● 0 ● 1 ● 6 ● 5 ● 10 ● 7x= 1; 5; 7
Označte ty hodnoty proměnné x, pro které je splněna následující podmínka: (X<5 || x>15) && (x>10 || x<6) ● -5 ● 15 ● 0 ● 16 ● 6x= -5; 0; 16
Označte ty hodnoty proměnné x, pro které je splněna následující podmínka: (x>5 || x<0 ) && (x<10 && x>-5) ● 9 ● 6 ● 0 ● 5x= 9; 6
Označte případy, kdy vznikne výjimka: ● int cislo=5 int vysledek = cislo / 0 ● int cislo=5 double vysledek = cislo / 0 ● double cislo = 5 double vysledek = cislo / 0 ● double cislo = 5.0 double vysledek = cislo / 0.0● int cislo=5 int vysledek = cislo / 0 ------------------------------------ ● int cislo=5 double vysledek = cislo / 0 (nejspíš)
Označte případy, které pro deklaraci String ss = " PŘÍKLAD "; překladač přeloží: - String tt = ss.trim(); - ss>>>=3 - String tt = "NA"+ss -ss[3] = "x"- String tt = ss.trim() - String tt = "NA"+ss
Přetížené metody se od sebe mohou lišit: - Počtem parametrů - jménem metody - typem a pořadím parametrů - návratovou hodnotou- Počtem parametrů - typem a pořadím parametrů
Při deklaraci formálních parametrů metody lze uvést: - modifikátor final - přiřadit defaultní (implicitní) hodnotu - určit typ parametru - modifikátor public- modifikátor final - určit typ parametru
Při zpracování cyklu (kde z je proměnná typu int): while(z>=0){ suma+=z;} mohou nastat tyto případy: - cyklus neproběhne ani jednou - Cyklus proběhne právě jednou - program se zacyklí - Skončí až bude proměnná z rovna 0- cyklus neproběhne ani jednou - program se zacyklí
Při zpracování vstupně-výstupních operací mohou být vyhozeny výjimky, jejichž typy mají následující hierarchii: Exception - IOException - FileNotFoundException ... záleží na formulaci otázky ... pozor ... - Každá metoda, která volá metodu mmm musí použít konstrukci try-catchzachytávající a ošetřující výjimku FileNotFoundException. - Metoda mmm musí deklarovat, že vyhazuje výjimku IOException neboException. - Metoda mmm musí deklarovat, že vyhazuje výjimku FileNotFoundException. - Na uvedené metody nejsou kladeny žádné speciální požadavky.● Na uvedené metody nejsou kladeny žádné speciální požadavky. ...nejlépe neodpovídat -------------------------- Jinde se tvrdí, že: ● Každá metoda, která volá metodu mmm musí použít konstrukci try-catch zachytávající a ošetřující výjimku FileNotFoundException. ● Metoda mmm musí deklarovat, že vyhazuje výjimku IOException nebo Exception
Shodně se mohou jmenovat: - dvě metody se stejnou návratovou hodnotou a různými parametry - dvě metody se stejnou návratovou hodnotou a stejnými parametry - dvě metody s různými návratovými hodnotami a různými parametry - dvě metody s různými návratovými hodnotami a stejnými parametry- dvě metody se stejnou návratovou hodnotou a různými parametry - dvě metody s různými návratovými hodnotami a různými parametry
Shodně se mohou jmenovat: - lokální proměnná a datový atribut instance - formální parametr metody a datový atribut instance - formální parametr metody a lokální proměnná - datový atribut instance a metoda instance- lokální proměnná a datový atribut instance - formální parametr metody a datový atribut instance - datový atribut instance a metoda instance
Slovo super se používá při: - volání metody předka - použití datového atributu předka (pokud k němu má potomek přístup) - volání konstruktoru předka - jako odkaz na jinou třídu z téhož balíčku- volání metody předka - použití datového atributu předka (pokud k němu má potomek přístup) - volání konstruktoru předka
Uvnitř metody může být deklarace: - lokální proměnné - datového atributu instance - jiné metody - statické proměnné třídy- lokální proměnné
Uvnitř těla metody může být: - příkaz return - prázdný odkaz - prázdný příkaz - příkazy skoků a cyklu - deklarace atributu instance- příkaz return - prázdný příkaz - příkazy skoků a cyklu - prázdný odkaz ...spíše ne - raději neodpovídat-to je sporné
U kterých z následujících zápisů ohlásí překladač chybu? Předchází deklarace float abc = 5 (Tahle "otázka" je nějaká divná) ● if (abc=5.37) ● if(abc !<=4L) ● if (abc<4.3) ● (int) 4(Tahle "otázka" je nějaká divná) ● if (abc=5.37) ● if (abc<4.3) ● (int) 4 --------------------- jinde tvrdí jenom: ● if (abc=5.37)
U kterého z následujících zápisů podmínky příkazu if překladač ohlásí chybu? Kódu předchází deklarace double abc = 5.3; ● if (abc < (int)4) ● if (abc < 4) ● if (abc = 5.37) ● if (abc >= 5.3)? ● u žádné z možností ? -------------------------- Jinde tvrdí: ● if (abc < (int)4) ● if (abc = 5.37)
Uvnitř jedné třídy se mohou shodně jmenovat: - lokální proměnná a datový atribut instance - formální parametr metody a datový atribut instance - datový atribut instance a metoda instance - formální parametr metody a lokální proměnná metody- lokální proměnná a datový atribut instance - formální parametr metody a datový atribut instance - datový atribut instance a metoda instance
V Javě může identifikátor začínat: - Podtržítkem - Mezerou - Písmenem - Zavináčem@ - Ampersandem & - Číslicí- Podtržítkem - Písmenem
Vyberte pravdivá tvrzení o datovém typu pointer: - Proměnná typu pointer může odkazovat na hodnotu, které již byla zrušena. - Po nevhodné aritmetice s proměnnou typu pointer může proměnná ukazovat jinam, než kam bylo zamýšleno. - Typ pointer podporuje operace přiřazení adresy, přičítání celého čísla k adrese a odečítání celého čísla od adresy. - Java podporuje datový typ pointer.- žádná z možností //podle mě není nic správně, TYP pointer v jave podle mě není, ale pointery ano, zvláštní co -------------------------------- Jinde tvrdí že je správně: ● Proměnná typu pointer může odkazovat na hodnotu, které již byla zrušena. ● Po nevhodné aritmetice s proměnnou typu pointer může proměnná ukazovat jinam, než kam bylo zamýšleno. ● Typ pointer podporuje operace přiřazení adresy, přičítání celého čísla k adrese a odečítání celého čísla od adresy.
Vyberte pravdivá tvrzení o objektech a abstraktních datových typech - Třídy v objektových programovacích jazycích jsou příklady abstraktního datového typu. - Abstraktní datový typ (ADT) umožňuje ukrývat implementaci. - V programu lze deklarovat a inicializovat proměnné abstraktního datového typu. - Při deklaraci abstraktního datového typu (ADT) může programátor definovat operace(metody, funkce) pro tento typ. - Při deklaraci abstraktního datového typu lze použít dědičnost a to i v případě, že se nejedná o třídu v OOP jazycích.- Abstraktní datový typ (ADT) umožňuje ukrývat implementaci. - V programu lze deklarovat a inicializovat proměnné abstraktního datového typu. - Při deklaraci abstraktního datového typu (ADT) může programátor definovat operace(metody, funkce) pro tento typ. - Při deklaraci abstraktního datového typu lze použít dědičnost a to i v případě, že se nejedná o třídu v OOP jazycích.
Vyberte pravdivá tvrzení o jednotkovém testování pomocí Junit - Dle konvencí by jméno testovací třídy mělo tvořit jméno testové třídy a slovo Test - Pro porovnání očekávané hodnoty se skutečnou návratovou hodnotou se v testech nejčastěji používá metoda assertEquals. - S pomocí Junit se většinou testuje veřejné rozhraní (API) třídy - Dle konvencí by jméno testovací metody mělo začínat slovem test - Pomocí Junit testů lze přímo otestovat privátní metody testované třídy - Pomocí JUnit testů nelze testovat vznik výjimek v testované metodě.● Dle konvencí by jméno testovací třídy mělo tvořit jméno testové třídy a slovo Test ● Pro porovnání očekávané hodnoty se skutečnou návratovou hodnotou se v testech nejčastěji používá metoda assertEquals. ● Dle konvencí by jméno testovací metody mělo začínat slovem test // někde je uvedeno i: ● S pomocí Junit se většinou testuje veřejné rozhraní (API) třídy
Vyberte pravdivá tvrzení o vedlejších efektech metody (výrazu): - Vedlejší efekt metody (výrazu) označuje situaci, kdy metoda (či výraz) mění i jinýstav (proměnnou) procesu, než je návratová hodnota. - Metody bez vedlejších efektů jsou čitelnější, neboť při pochopení významu senemusí brát v úvahu další proměnné mimo metodu. - Operátor ++ v Javě je příkladem operátoru s vedlejším efektem - vrací návratovou hodnotu a současně zvyšuje hodnotu příslušné proměnné. - Metody bez vedlejších efektů deklarované uvnitř třídy nemění hodnotu datovýchatributů instance této třídy. - Pokud by metody met1 a met2 v následující ukázce byly bez vedlejších efektů,tak nezávisí na pořadí volání následujících dvou příkazů: int a = met1(prom1);int b =met2(prom2);- Vedlejší efekt metody (výrazu) označuje situaci, kdy metoda (či výraz) mění i jinýstav (proměnnou) procesu, než je návratová hodnota. - Metody bez vedlejších efektů jsou čitelnější, neboť při pochopení významu senemusí brát v úvahu další proměnné mimo metodu. - Operátor ++ v Javě je příkladem operátoru s vedlejším efektem - vrací návratovou hodnotu a současně zvyšuje hodnotu příslušné proměnné. - Metody bez vedlejších efektů deklarované uvnitř třídy nemění hodnotu datovýchatributů instance této třídy. - Pokud by metody met1 a met2 v následující ukázce byly bez vedlejších efektů,tak nezávisí na pořadí volání následujících dvou příkazů: int a = met1(prom1);int b =met2(prom2);
Vyberte pravdivé výroky o jazyce Prolog: - Databáze v pojetí Prologu je seznam fakt a pravidel - Fakta v Prologu popisují vlastnosti objektů a vztahy mezi objekty - Pravidla umožňují ze stávajících fakt odvozovat další fakta - Prolog podporuje cykly i v rekurzi - V Prologu jsou všechny proměnné stejného typu- Databáze v pojetí Prologu je seznam fakt a pravidel - Fakta v Prologu popisují vlastnosti objektů a vztahy mezi objekty - Pravidla umožňují ze stávajících fakt odvozovat další fakta - V Prologu jsou všechny proměnné stejného typu // Jak se to vezme, spíš ne
Vyberte správnou verzi hlavičky metody, která se musí ve třídě nadeklarovat pro spuštění - Public static void main (String [ ] cokoliv) - Java aplikace z příkazové řádky: - Static void main (String [ ] ars) - Public static void start (String [ ] parametry) - Public static void main (String args)- Public static void main (String [ ] cokoliv)
Výjimky dělíme na: - Kontrolované x nekontrolované - nepoužíváme žádné z uvedených dělení - aplikační x programové x systémové - ošetřené x neošetřené- Kontrolované x nekontrolované