• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Teoria Javy - dziedziczenie

Object Storage Arubacloud
0 głosów
351 wizyt
pytanie zadane 6 grudnia 2018 w Java przez klestdrsv Nowicjusz (180 p.)
Hej, dopiero rozpoczynam swoją przygodę z programowaniem obiektowym i Javą, więc proszę o wyrozumiałość.

Dzisiaj zaczęłam przerabiać książkę "Java w 21 dni" i na końcu dnia jest pytanie:

Które z poniższych stwierdzeń jest prawdziwe?

A. Wszystkie obiekty utworzone z tej samej klasy muszą być identyczne

B. Wszystkie obiekty utworzone z tej samej klasy mogą mieć różne atrybuty

C. Obiekt dziedziczy atrybuty i zachowanie z klasy zastosowanej do jego utworzenia

D. Klasa dziedziczy atrybuty i zachowanie po swojej podklasie

Na pewno nie A i D. Zastanawiałam się pomiędzy B i C, ale ostatecznie wybrałam C, natomiast prawidłowa odpowiedź to podobno B. Dlaczego? Przecież z tego, co czytałam obiekt dziedziczy wszystkie atrybuty i metody z klasy zastosowanej do jego utworzenia. Proszę o pomoc.
2
komentarz 6 grudnia 2018 przez Tomasz Rogalski Bywalec (2,800 p.)
Szczerze? To pytania są gówniano skonstruowane. Na certyfikacji OCA z Javy nawet nie gmatwali tak mocno.

2 odpowiedzi

+1 głos
odpowiedź 6 grudnia 2018 przez RafalS VIP (122,820 p.)
edycja 6 grudnia 2018 przez RafalS

Przecież z tego, co czytałam obiekt dziedziczy wszystkie atrybuty i metody z klasy zastosowanej do jego utworzenia

Bardzo złe podejście w nauce programowania. Wiedza tego typu powinna wynikać z doświadczenia w zadaniach praktycznych. Nie miałabyś problemu z takimi pytaniami jeśli napisałabyś klika klas w życiu, oczywiście ze zrozumieniem. 

Dodatkowo każdy programista widząc takie pytanie nie szukałby odpowiedzi w książce tylko przetestował to na kompilatorze - napisałby dwie klasy i je podziedziczył.

EDIT: Założyłem, że potrafisz już coś napisać w Javie skoro przerabiasz dziedziczenie, jeśli nie potrafisz to od tego zacznij a dziedziczenie na razie pomiń.

komentarz 6 grudnia 2018 przez klestdrsv Nowicjusz (180 p.)
Oczywiście zdaję sobie z tego sprawę, że najbardziej liczą się zadania praktyczne, ale to dopiero pierwszy rozdział dotyczący Javy i generalnie programowania, jaki przeczytałam w życiu, a ciężko jest zacząć bez jakiejkolwiek teorii. W książce jest też sporo ćwiczeń praktycznych i wydawało mi się, że je rozumiem, oczywiście nie jestem jeszcze 100% pewna swojej wiedzy, więc gdy zobaczyłam odpowiedź do tego pytania, zwątpiłam.
komentarz 6 grudnia 2018 przez RafalS VIP (122,820 p.)
edycja 6 grudnia 2018 przez RafalS
A to przepraszam najmocniej. Dziedziczenie to nie jest coś co się bierze na sam początek programowania, więc założyłem, że już troche programowałaś ;/ I pod tym założeniem zasugerowałem, że warto samemu przetestować takie rzeczy.

Dodam jeszcze, że pytania są wyjątkowo niejasne. Prawie w każdym wszystko zależy od tego jak rozumieć słowa autora, które można interpretować na na prawdę różne sposoby.

Po prostu odpuść sobie na razie dziedziczenie i przejdz dalej, bo na sam początek i tak nie będziesz go wykorzystywać w praktyce :)
0 głosów
odpowiedź 6 grudnia 2018 przez Wiciorny Ekspert (270,170 p.)

C. Obiekt dziedziczy atrybuty i zachowanie z klasy zastosowanej do jego utworzenia

W myśli : JAVA- jako OPP - języka, jest to prawdą ponieważ obiekt jest "instancją, pewnym bytem" czegoś co jest własnie szablonem - klasą. Więc w myśl programowania obiektowego Obiekt dziedziczy - po szablonie ( klasie ).

Ale to takie nad wyraz.

A- zdecydowanie NIE.

B- zdecydowanie NIE  ( chyba, że mówiąc -a trybut, uwzględniamy wartość ).

Because each instance of aclass can have different values for its variables,

ale nie może mieć innych atrybutów :) 

Przecież z tego, co czytałam obiekt dziedziczy wszystkie atrybuty i metody z klasy zastosowanej do jego utworzenia. 

 zachowania statyczne bedą należeć do KLASY NIE OBIEKTU WIĘC JEST TO NIEPRAWDA.

Statyczne ATRYBUTY/METODY - mimo że dostępne w obiekcie, nie będą należały do niego, tylko stosowanie ich bezpośrednio odwołuje się do KLASY BAZOWEJ 

komentarz 6 grudnia 2018 przez klestdrsv Nowicjusz (180 p.)
Ja właśnie zaznaczyłabym C, a podobno B jest prawidłową odpowiedzią. Czyli możliwe, że to błąd?
komentarz 6 grudnia 2018 przez NowyUrzydgownig Mądrala (5,090 p.)
B w przypadku np. Jak przechowujesz interfejs to możesz mieć różne atrybuty(instancje klas) pod nim. - chyba o to chodzi.
komentarz 6 grudnia 2018 przez Wiciorny Ekspert (270,170 p.)

@leemealitie, bo pewnie domyślnie chodzi o wartości ... wtedy każdy obiekt ma inny atrybut z racji tego, żę referencja wskazuje na inną wartość 

komentarz 6 grudnia 2018 przez Wiciorny Ekspert (270,170 p.)

 obiekty utworzone z tej samej klasy 

komentarz 4 godziny temu przez NowyUrzydgownig Gaduła (3,210 p.)

B w przypadku np. Jak przechowujesz interfejs to możesz mieć różne atrybuty(instancje klas) pod nim. - chyba o to chodzi.

 

tworząc instancje obiektu, nie tworzysz "obiektu interfejsu' mumo ze klasa bazowa implementuje ten interfejs, po drugie. interfejs moze miec tylko statyczne i finalne pola, wiec generalnie nie mozesz ich zmienic :)  

atrybut to nie instancja klasy... atrybut to pole w klasie. , nie ma czegos takiego jak przechowywanie interfejsu. 

komentarz 6 grudnia 2018 przez NowyUrzydgownig Mądrala (5,090 p.)
Różne klasy mogą implementować ten sam interfejs. Wtedy w klasie w której przechowujesz ten interfejs możesz stworzyć jedną z klas, które implementują ten interfejs. Wówczas możesz tworzyć różne klasy, które mają różne instancje klas - właśnie dzięki zastosowaniu interfejsu.

Podobne pytania

0 głosów
1 odpowiedź 451 wizyt
pytanie zadane 13 maja 2018 w Java przez Adrian Paź Obywatel (1,270 p.)
0 głosów
1 odpowiedź 129 wizyt
pytanie zadane 7 września 2017 w Java przez acsp Nowicjusz (220 p.)
0 głosów
1 odpowiedź 576 wizyt

92,576 zapytań

141,426 odpowiedzi

319,652 komentarzy

61,961 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...