Dúvida de como instanciar um array da classe pai na classe teste

1 resposta
programaçãojavaarray
M

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());
		
		
	}

}

1 Resposta

M

Resolvido!!!

Criado 8 de janeiro de 2017
Ultima resposta 10 de jan. de 2017
Respostas 1
Participantes 1