Nas aulas o professor está utilzando as classes sem utilizar construtores, no meu código não aceita. Isso é devido a alguma atualização na linguagem? Até chega na composição de classes eu consegui fazer dar certo, mesmo utilizando os contrutores, mas agora travei. Não consigo chamar o nome na contaDaAmanda.
import 'package:alura_bank/alura_bank.dart';
void main() {
Cliente amanda = Cliente(
'Amanda Souza',
'123.456.789-00',
'Programadora'
);
ContaCorrente contaDaAmanda = ContaCorrente(titular, agencia, conta, saldo)
print('Saldo da Amanda antes da movimentação: ${contaDaAmanda.saldo}');
print('Saldo do Diogo antes da movimentação: ${contaDoDiogo.saldo}');
var sucesso = contaDaAmanda.transferencia(200, contaDoDiogo);
print('Sucesso: $sucesso');
print('Saldo da Amanda após a movimentação ${contaDaAmanda.saldo}');
print('Saldo do Diogo após a movimentação ${contaDoDiogo.saldo}');
}
class Cliente {
String nome;
String cpf;
String profissao;
Cliente(this.nome, this.cpf, this.profissao);
}
class ContaCorrente {
Cliente titular;
int agencia;
int conta;
double saldo;
double chequeEspecial = 100;
ContaCorrente(this.titular, this.agencia, this.conta, this.saldo);
bool saque(double valorDoSaque) {
if(verificaSaldo(valorDoSaque)) {
print('Sem saldo');
return false;
} else {
print('Sacando $valorDoSaque');
saldo -= valorDoSaque;
return true;
}
}
double deposito(double valorDoDeposito) {
saldo += valorDoDeposito;
return saldo;
}
bool transferencia(double valorTransferencia, ContaCorrente contaDestino) {
if(verificaSaldo(valorTransferencia)) {
print('Sem saldo');
return false;
} else {
print('Transferindo $valorTransferencia');
saldo -= valorTransferencia;
contaDestino.deposito(valorTransferencia);
return true;
}
}
bool verificaSaldo(double valor) {
if(conta - valor < chequeEspecial) {
print('Sem saldo');
return false;
} else {
print('Movimentando o $valor');
return true;
}
}
}