Hallo, ich wollte fragen warum sich a.m in der markierten zeile um 1 erhöht und nicht b.m?
b.m existiert an der Stelle noch gar nicht, weil b null ist. a referenziert ein Objekt, dessen incr-Methode aufgerufen wird. Das m dieses Objekts wird erhöht und eine Referenz (this) auf das Objekt wird zurückgegeben. Diese Referenz wird dann erst der Variablen b zugewiesen. Nach der Zeile referenzieren sowohl a als auch b das selbe Objekt, d. h. es ist a == b.Hallo, ich wollte fragen warum sich a.m in der markierten zeile um 1 erhöht und nicht b.m?
verständlich erklärt, dankeb.m existiert an der Stelle noch gar nicht, weil b null ist. a referenziert ein Objekt, dessen incr-Methode aufgerufen wird. Das m dieses Objekts wird erhöht und eine Referenz (this) auf das Objekt wird zurückgegeben. Diese Referenz wird dann erst der Variablen b zugewiesen. Nach der Zeile referenzieren sowohl a als auch b das selbe Objekt, d. h. es ist a == b.