Program.cs
ContaCorrente contaCorrente2 = new ContaCorrente("Juliano", 122, "223-X");
ContaCorrente contaCorrente3 = new ContaCorrente("Maria", 1234, "223-J");
Classe ContaCorrente
public class ContaCorrente // declaração da classe
{
public static int totalContasCriadas { get; set; }
private int numero_agencia;
public int Numero_Agencia
{
get { return this.numero_agencia; }
private set
{
if (value < 0)
{
return;
}
else
{
this.numero_agencia = value;
}
}
}
public string Conta { get; private set; }
public Cliente Titular { get; set; }
private double saldo = 100;
public double Saldo
{
get { return this.saldo; }
set
{
if (value > 0)
{
this.saldo = value;
}
else
{
return;
}
}
}
// void indica que a função não retorna nada
public void Depositar(double valor)
{
saldo += valor;
}
public bool Sacar(double valor)
{
if (valor <= saldo)
{
saldo -= valor;
return true;
}
else
{
return false;
}
}
public bool Transferir(double valor, ContaCorrente contaDestino)
{
if (valor <= saldo)
{
Sacar(valor);
contaDestino.Depositar(valor);
return true;
}
else
{
return false;
}
}
public ContaCorrente(string nome_titular, int numero_agencia, string numero_conta)
{
this.Numero_Agencia = numero_agencia;
this.Conta = numero_conta;
totalContasCriadas++;
this.Titular = new Cliente(nome_titular);
Console.WriteLine(Cliente.totalClientesCadastrados);
}
}
Classe Cliente
public class Cliente
{
public static int totalClientesCadastrados { get; private set; }
public string Nome { get; set; }
public string Cpf { get; set; }
public string Profissao { get; set; }
public Cliente(string nome_cliente)
{
this.Nome = nome_cliente;
totalClientesCadastrados++;
}
}