Saudações camaradas programadores!
Onde eu deveria instanciar um objeto de Data nesse exemplo?
Na verdade, como saber exatamente quando instanciar um objeto de uma classe?
package Conta;
import Conta.Data;
public class Conta {
// Atributos
private String titular;
private int numero;
private String agencia;
private Data dataAbertura;
protected double saldo;
// Metodos
// Deposito saque e transferencia
public void depositar(double valor) {
if (valor > 0) {
this.saldo += valor;
}
}
public void sacar(double valor) {
if (valor <= this.saldo) {
double novoSaldo = this.saldo - valor;
this.saldo = novoSaldo;
}
}
public void transferePara(Conta conta, double valor) {
this.sacar(valor);
conta.depositar(valor);
}
// Metodos de retorno para o usuario
public double calculaRendimento() {
return (this.saldo * 0.1);
}
// Getters e setters
public double getSaldo() {
return this.saldo;
}
public int getNumero() {
return numero;
}
public void setNumero(int numero) {
this.numero = numero;
}
// Seta ou pega a agência para o usuario
public String getAgencia() {
return this.agencia;
}
public void setAgencia(String agencia) {
this.agencia = agencia;
}
// Get e set do nome do titular
public String getTitular() {
return titular;
}
public void setTitular(String nomeTitular) {
this.titular = nomeTitular;
}
//Modifica e seta datas
public void setData(int dia, int mes, int ano) {
dataAbertura.dia = dia;
dataAbertura.mes = mes;
dataAbertura.ano = ano;
};
public String getData() {
String dataFormatada;
String dia = Integer.toString(dataAbertura.dia);
String mes = Integer.toString(dataAbertura.mes);
String ano = Integer.toString(dataAbertura.ano);
dataFormatada = dia + " " + mes + " " + ano;
return dataFormatada;
}
}
A classe conta corrente
package Conta;
public class ContaCorrente extends Conta{
public String getTipo() {
return "Conta Corrente";
}
@Override
public void sacar(double valor) {
super.sacar(valor + 0.10);
}
}
A classe Data
package Conta;
public class Data {
int dia;
int mes;
int ano;
public int getDia() {
return dia;
}
public void setDia(int dia) {
this.dia = dia;
}
public int getMes() {
return mes;
}
public void setMes(int mes) {
this.mes = mes;
}
public int getAno() {
return ano;
}
public void setAno(int ano) {
this.ano = ano;
}
}