Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 1 - A, ponieważ tak to powinno narysować, ale z tak małymi parametrami rysuje daną linię poza oknem, więc moogłoby być D, z większymi rysuje A.
- 2 - wygeneruje B, klasa abstrakcyjna określa tylko co ma robić dziecko, a niekoniecznie co ma robić, więc ciało metody zostanie przesłonięte.
- 3 - wygeneruje B, jak wyżej.
- 4 - C, nie zwraca nic, nie ma parametrów (void Hello()).
- 5 - D, Java nie dopuszcza dziedziczenia wielokrotnego, reszta to bzdury, intefejs dołączamy słowem kluzowym implements, nie extends (dziedziczenie).
- 6 - C, pierwszy wygeneruje 19, drugi 11, tylko Kubson chce sobie potrolować i nie użył przejścia do nowego wiersza.
- 7 - B i C, konstruktor A() nie jest public, więc nie można go używać w innych pakietach.
- 8 - B, wygeneruje RE, try/catch działa trochę jak switch, skoro rzuciliśmy RuntimeException to obsłuży tylko ten wyjątek i wypisze RE.
- 9 - C, powstanie jeden nie kończący się wątek nie będący demonem, w1.run(); będzie się wykonywało w nieskończność.
- 10 - B, jeżeli w systemie pozostały już tylko wątki demony to VM kończy działanie programu ponieważ nie istnieja już wątki dla których demony mogą prowadzić serwis. Main jest tylko rozruchowe.
- 11 - D, mamy statyczną zmienną s, w metodzie m dokoptowanie " b" zadziała tylko w obrębie funkcji, nie ma żadnej mocy poza nią. Wypisze tylko a, chyba, że doda się wyświetlanie w pętli metody run.
- 12 - A, to drugie w ogóle się nie wykona, rzuci wyjątek - argumentami maina będzie zawsze tablica ciągów znaków przechwytywana, np. z terminala.
- 13 - B i D, zmienne final, ta static też.
- 14 - B, amethod() powinna być stworzona w ciele dziedziczącej po abstrakcyjnej klasie (M1), lecz jej nie ma. Dlatego M2 powinna być abstrakcyjną klasą, bądź amethod() powinno mieć deklarację w ciele M2.
- 15 - C, one, two, default - brak break; po intrukcji wyboru.
- 16 - 0, domyślnie Java deklaruje wszystkie zainicjalizowane typy liczbowe zerami, jeżeli my sami nie zainicjalizujemy wartości. Typy przechowujące tekst są domyślnie wypełniane nullem.
- 17 - B, ClassCastException. Dziedziczymy po B, a potem próbujemy rzutować B jako Sub. Sub w teorii może być klasą bardziej rozwiniętą od B, dlatego Java nie pozwala na tego typu manewr, rzutowanie Sub jako B udałoby się. Nie można rzutować obiektów klasy nadrzędnej jako obiekt dziecka. Rodzic rodzic = (Rodzic) dziecko natomiast zadziała.
- 18 - D, Bye na dole, Hello na górze. Użyliśmy GridLayout, który podzielił nam okienko i zajmie się rozmieszczaniem na dwóch poziomach (2, 2). Bez GridLayout ostatni zadeklarowany element (tutaj button Bye) zajął by nam całe okno.
- 19 - C, 10 i 40. Zmienna i została zadeklarowana w mainie i tylko tam mają "moc" jej proste modyfikacje, gdy przekażemy ją do m, stworzy po prostu kopię, która działać będzie tylko w obrębie m. Zmienna j natomiast jest statyczna, działa w obrębie całej klasy, więc wykonane na niej zmienne mają moc w każdej metodzie/bloku.
- 20 - B, i=1 j=1 i=2 j=1, etykiety to identyfikator występujący przed instrukcją, mamy warunek, który nakazuje nam w przypadku true kontynuować blok programu od instrukcji z etykietą 1.
- 21 - A, stałe trzeba zawsze inicjalizować, bez final wyrzuciło by domyślną deklarację, czyli 0.
- 22 - B, klasy wewnętrzne mogą byś statyczne albo standardowe, klasy lokalne, anonimowe to typ klas wewnętrznych, nie mogą być statyczne. Zewnętrzne tak samo.
- 23 - B, błąd kompilacji, i nie jest polem klasy A. Próbujemy dostać się w r.i do pola klasy A, które nie zostało zainicjalizopwane. W metodzie met stworzyliśmy zmienną tylko w obrębie bloku metody met.
- 24 - C, ServerSocket i Socket, pasowałby jeszcze DatagramSocket dla gniazda komunikacji pakietowej, ale jest w parze ze StreamSocket, która po prostu nie pasuje do definicji.
- 25 - na pewno wykona A i C, new Socket(HOST, PORT), dla B nie wykona połączenia, dla D nie wiem, ale możliwe, że wykona, więc zostało tylko to B.
- 26 - B i C, nie znalazłem nic na temat metod read() i write()
- 27 - A tak, B nie (final int), C tak (klasa lokalna), D prawdopodobnie tak
- 28 - D, poprawna kompilacja i wykonanie. Zajmujemy pamięć dla dwuwymiarowej dablicy double 20000x20000, po czym element 0x0 definiujemy jako 1.0. Prawidłowo.
- 29 - B, skompiluje, ale rzuci wyjątkiem NullPointerException. Chcemy odwołać się pola obiektu przez niezaicjalizowaną zmienną.
- 30 - D, m() w A, przykład klasy wewnętrznej.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement