Witam,
W załączniku plik z pytaniami i moimi odpowiedziami czy moglibyście skorygować błędy ?
Lub dokument online:
http://sdrv.ms/15uPm5I
Witam,
W załączniku plik z pytaniami i moimi odpowiedziami czy moglibyście skorygować błędy ?
Lub dokument online:
http://sdrv.ms/15uPm5I
W 4 to chyba jeszcze będzie odpowiedź b) prawidłowa, w 14 raczej brak prawidłowej odpowiedzi bo metoda abc przyjmuje inta.
A co sadzicie o takim zestawie odpowiedzi?
Nie wiem co autor pytań rozumie przez zwrot
Jest standardowy układem
, ale w pytaniu 18 odpowiedź (d) jest raczej poprawna. BorderLayout jest na pewno domyślnym układem w JFrame.
Czy jest ktos w stanie wstawic ten plik z poprawnymi odpowiedziami? Prosze o zaznaczenie prawidlowych polecen kolorem czerwonym.
W 6 poleceniu interface jest poprawna odpowiedzia
JMarcin napisał(a):
Witam,
W załączniku plik z pytaniami i moimi odpowiedziami czy moglibyście skorygować błędy ?Lub dokument online:
http://sdrv.ms/15uPm5I
Moim zdaniem będzie tak:
Dzięki Lena(R). Hmm tylko jeszcze jedno mnie zastanawia, no bo w javie chyba każda klasa dziedziczy niejawnie po Object, więc zastanawiam się nad tym pytaniem z
class B extends A, zastanawia mnie czy tutaj B jednak też dziedziczy po Object, chociaż z drugiej strony tak jak Ty mówisz, w Javie nie ma wielokrotnego dziedziczenia.
Jeżeli klasa K1 dziedziczy po Object, klasa K2 dziedziczy po K1, klasa K3 dziedziczy po K2, ...., klasa K(N) dziedziczy po K(N-1), to efektywnie klasa K(N) dziedziczy po wszystkich klasach ze zbioru: {Object, K1, K2, K3, ...., K(N-1)}. Nie ma tutaj wielodziedziczenia, bo wielodziedziczenie jest wtedy gdy hierarchia dziedziczenia nie tworzy drzewa, ponieważ jakiś węzeł ma dwoje lub więcej rodziców. To że bez wielodziedziczenia wydaje się, że to wielodziedziczenie jest wynika z przechodniości relacji dziedziczenia.
Obrazowo można przedstawić to na przykładzie tego: http://pl.wikipedia.org/wiki/Plik:Sorted_binary_tree.svg
Załóżmy, że F to java.lang.Object oraz strzałka z klasy X do klasy Y oznacza, że Y extends X. A więc:
Wielodziedziczenie można obrazowo przedstawić np tak: http://en.wikipedia.org/wiki/File:Directed_acyclic_graph_3.svg
Tu widać, że do niektórych kółek (klas) wchodzi więcej niż jedna strzałka, a więc występuje wielodziedziczenie.
Wielodziedziczenie w Javie występuje tylko w przypadku interfejsów, tzn zarówno interfejs może rozszerzać wiele interfejsów, jak i klasa może implementować wiele interfejsów naraz.
Dzięki temu, że nie ma wielodziedziczenia unika się tzw diamond problem: http://en.wikipedia.org/wiki/Multiple_inheritance#The_diamond_problem
Polega to na tym, że w Javie wywołanie metody na danym obiekcie skutkuje wywołaniem metody z klasy najniżej w hierarchii (najdalej od korzenia, czyli Object), w której zdefiniowana jest ta metoda - ale na ścieżce do klasy obiektu. A więc jest prosto i przejrzyście. W przypadku wielodziedziczenia byłby problem typu: z której ścieżki dziedziczenia skorzystać przy wyszukiwaniu docelowej metody? Bez wielodziedziczenia jest tylko jedna ścieżka z korzenia, więc nie ma takiego problemu.