Estou com dúvida no seguinte: No exercício proposto eu tenho que calcular o imposto de 3 pessoas físicas e 3 jurídicas. Tenho um atributo na classe pai que é um array de Strings. Como faço para instanciar esse array na classe de “testeExec2” para o usuário colocar as informações de nome? O código que eu fiz até agora está abaixo. Desde já agradeço.
obs: Não aprendi a fazer arraylist, por enquanto, só o array básico.
public class Contribuinte {
private String[] nomeContribuintes;
private double renda;
public Contribuinte() {
super();
}
public Contribuinte(double renda) {
super();
this.renda = renda;
}
public double getRenda() {
return renda;
}
public void setRenda(double renda) {
this.renda = renda;
}
public String[] getNomeContribuintes() {
return nomeContribuintes;
}
public void setNomeContribuintes(String[] nomeContribuintes) {
this.nomeContribuintes = nomeContribuintes;
}
}
public class PessoaJuridica extends Contribuinte {
private double imposto;
public double getImposto() {
return imposto;
}
public void setImposto(double imposto) {
this.imposto = imposto;
}
private String cnpj;
public String getCnpj() {
return cnpj;
}
public void setCnpj(String cnpj) {
this.cnpj = cnpj;
}
public double calcularImposto() {
imposto = super.getRenda() * 0.1;
return imposto;
}
public PessoaJuridica(double renda) {
super(renda);
}
}
public class PessoaFisica extends Contribuinte {
private String cpf;
private double imposto;
public String getCpf() {
return cpf;
}
public void setCpf(String cpf) {
this.cpf = cpf;
}
public double calcularImposto() {
if (super.getRenda() < 1401) {
imposto = 0;
}
if (super.getRenda() >= 1400.01 && super.getRenda() < 2100) {
imposto = super.getRenda() * 0.1;
}
if (super.getRenda() >= 2100.01 && super.getRenda() < 2800) {
imposto = super.getRenda() * 0.15;
}
if (super.getRenda() >= 2800.01 && super.getRenda() < 3600) {
imposto = super.getRenda() * 0.25;
}
if (super.getRenda() >= 3600.01) {
imposto = super.getRenda() * 0.3;
}
return 0;
}
public PessoaFisica(double renda) {
super(renda);
}
public double getImposto() {
return imposto;
}
public void setImposto(double imposto) {
this.imposto = imposto;
}
}
public class TesteExerc2 {
public static void main(String[] args) {
double totalPessoaJuridica = 0;
double totalPessoaFisica = 0;
Contribuinte contribuinte = new Contribuinte();
PessoaJuridica pessoajuridica = new PessoaJuridica(5000.0);
PessoaFisica pessoafisica = new PessoaFisica(37000);
pessoajuridica.calcularImposto();
System.out.println(pessoajuridica.getImposto());
pessoafisica.calcularImposto();
System.out.println(pessoafisica.getImposto());
}
}