Dziedziczenie i tworzenie obiektów, teoretycznie i w realu

Powiedzmy, że mam klasęA.java,

Kiedy wykonam metodę konstruktora A, utworzy ona pamięć dlaxyz Obiekt.

A xyz = new A();

Odniesienie do pamięci może być czymś w rodzaju:

[xyz] ---> '0x34524'

To podstawy OOP. Wystarczająco proste!

Teraz,

Co się stanie, jeśli klasa dziedziczy z różnych klas nadrzędnych? Ile przestrzeni obiektów zostanie utworzonych w pamięci?

Powiedzmy, że mamy,

a następnie tworzymy obiekt klasyD.java,

D omg = new D();

Jak wiemy, obiekt D wywoła konstrukcję C.java i tak dalej, aż do A.java. Czy to oznacza, że ​​w pamięci mamy 4 różne odwołania do pamięci, ponieważ tworzymy wszystkie cztery obiekty (jeden bezpośrednio, a drugi pośrednio)?

[omg] ---> '0x34525'
[C]   ---> '0x34526'
[B]   ---> '0x34527'
[A]   ---> '0x34528'

Uwaga :

To nie jest pytanie o pracę domową, to tylko pytanie o ciekawość.Jestem świadomy faktu, że jeśli mamy zmienną instancji wewnątrz A.java, to nie utworzymy tylko obiektu A, ale będziemy tworzyć inny obiekt wewnętrzny za każdym razem, gdy trafimynew słowo kluczowe.

questionAnswers(3)

yourAnswerToTheQuestion