1
resposta

Por que igualamos conta1=conta2

No código da atividade temos:

void main() {
  ContaCorrente conta1 = ContaCorrente();
  conta1.saldo = 500;

  ContaCorrente conta2 = ContaCorrente();
  conta2 = conta1; //irrelevante

  conta1.saldo += 1000;

  print(conta1.saldo);
}

class ContaCorrente {
  late double saldo;
}

Porém se tiramos conta1=conta2 o resultado acaba sendo o mesmo, 1500:

void main() {
  ContaCorrente conta1 = ContaCorrente();
  conta1.saldo = 500;

  ContaCorrente conta2 = ContaCorrente();

  conta1.saldo += 1000;

  print(conta1.saldo);
}

class ContaCorrente {
  late double saldo;
}

Desta forma não entendo bem qual a diferença...

Não seria a intenção da atividade fazer da seguinte maneira:

void main() {
  ContaCorrente conta1 = ContaCorrente();
  conta1.saldo = 500;

  ContaCorrente conta2 = ContaCorrente();
  conta2 = conta1; 

  conta2.saldo += 1000;

  print(conta1.saldo);
}

class ContaCorrente {
  late double saldo;
}

ou seja conta2.saldo += 1000; ao invés de conta1.saldo += 1000; ???

Assim poderíamos entender que a referência é a mesma.

Perdi algo ou a resposta do exercício que tá errada?

1 resposta

Também fiquei meio sem entender onde o instrutor queria chegar kkk... Mas realmente deve ter sido erro dele... ao final deveria ter imprimido o objeto "conta2" no caso ( print(conta2.saldo) ....