Dzień dobry, dobrze zrozumiałem tutorial javy?
Recall that the new operator returns a reference to an object.
the object that getArea() is invoked on is the rectangle returned by the constructor.
Dzień dobry, dobrze zrozumiałem tutorial javy?
Recall that the new operator returns a reference to an object.
the object that getArea() is invoked on is the rectangle returned by the constructor.
Imo ważne jest to jak to wyglądało w kursie.
Recall that the new operator returns a reference to an object.
Jeśli o to chodzi to tak, new
zwraca referencję do obiektu.
int areaOfRectangle = new Rectangle(100, 50).getArea();
the object that getArea() is invoked on is the rectangle returned by the constructor.
Czyli obiekt na którym wywoływana jest metoda getArea()
jest trójkątem zwróconym przez konstruktor. Jak widać jest to konstruktor trójkąta.
Więc w tym przypadku Twoje konstruktor zwraca obiekt
jest moim zdaniem niepoprawne. Chodzi o to że ta metoda jest wywołana na 'świeżo' zwróconym (utworzonym) przez konstruktor obiekcie.
Chodzi o to że ta metoda jest wywołana na 'świeżo' zwróconym (utworzonym) przez konstruktor obiekcie.
@szweszwe wybacz, ale nie zrozumiałem :P
Konstruktor Rectangle
zwraca obiekt a metoda getArea()
jest wywoływana na tym właśnie obiekcie, bez żadnego przypisywania go wcześniej do zmiennej. Pewnie wytłumaczone, żeby ktoś nie pomyślał, że wywołują metodę na konstruktorze.
Czyli jednak kondtruktor zwraca obiekt?
W tekście w pierwszym przypadku jest napisane, że new
zwraca referencje do obiektu - tak jak już pisałem.
Potem gdzie jest new Rectangle(100, 50).getArea()
napisali, że getArea()
jest wywołana na trójkącie zwróconym przez konstruktor.
Wg mnie można przyjąć, że konstruktor tworzy obiekt ale zwraca do niego referencje. Może w tym kursie trochę się pospieszyli i zamiast napisać, że wywołują metodę na obiekcie do którego referencję zwrócił konstruktor napisali po prostu o trójkącie zwróconym przez konstruktor.