Duvida da caelum...metodo mostra

4 respostas
J

Pessoal, fiz os metodos contrutores usando get e set mas agora tenho problemas no metodo imprimir e mostrar. Como fa,co para acessar esses valores da classe funcionario e imprimir na tela quando executar a classe TestaEmpresa?

CLASSE FUNCIONARIO

class Funcionario{
 	private String nome;
	private String departamento;
	private double salario;
	Data dataEntrada;
	private String rg;
	private boolean estaNaEmpresa;
	private static int totalFuncionarios;

	//metodo construtor
	Funcionario(){
	Funcionario.totalFuncionarios= Funcionario.totalFuncionarios+1;
	}
	
	//no construtor nao sua set somente get
	public static int getTotalFuncionarios(){
		return Funcionario.totalFuncionarios;
	}
	

	public String getNome(){
	return this.nome;
	}

	public void setNome(String nome){
	this.nome=nome;
	}

	public String getDepartamento(){
	return this.departamento;
	}

	public void setDepartamento(String departamento){
	this.departamento=departamento;
	}

	public double getSalario(){
	return this.salario;
	}

	public void setSalario(double salario){
	this.salario=salario;
	}

//	public Data getDataEntrada(){
//	return this.dataEntrada;
//	}

//	public void setDataEntrada( Data dataEntrada){
//	this.dataEntrada=dataEntrada;
//	}
	
	public String getRg(){
	return this.rg;
	}

	public void setRg(String rg){
	this.rg=rg;
	}

	public boolean getEstaNaEmpresa(){
	return this.estaNaEmpresa;
	}

	public void setEstaNaEmpresa(boolean estaNaEmpresa){
	this.estaNaEmpresa= estaNaEmpresa;
	}

	//fim dos gets e sets

	void bonifica(double valor){
	double bonus = this.salario + valor;
	this.salario=bonus;
	}

	void demite(){
	this.estaNaEmpresa=false;
	}


	void mostra(){
System.out.println("\nNome: "+ getNome()+ "\nDepartamento: "+ getDepartamento() + "\nSalario: "+ 	getSalario()+ "\nData de entrada: "+ this.dataEntrada.dia +"/"+ this.dataEntrada.mes + "/" + this.dataEntrada.ano + "\nRG: "+ getRg() + "\nEsta na empresa? "+ getEstaNaEmpresa());
	}

}

CLASSE EMPRESA

class Empresa{
 	String nome;
	String cnpj;
	Funcionario[] funcionarios;
	int pos=0;


	public void adiciona( Funcionario f){
	if(this.funcionarios[pos] == null){
	this.funcionarios[pos++]=f;
	}else{
	System.out.println("Array cheio!");
	}
	}

	void mostra(){
	System.out.println("\nNome: "+ this.nome + "\nCNPJ: "+ 	this.cnpj + "\nFuncionario: " + this.funcionarios[0]);
	}

	void imprime(){
	for(int i=0; i<funcionarios.length;i++){
		System.out.println(funcionarios[i]);
	}
	}

	public void imprimelistaFuncionarios(){
	for(int i=0; i><funcionarios.length; i++){
	System.out.println("Nome: "+ funcionarios[i].nome + "\tSalario: "+ funcionarios[i].salario) ;
	}
	}

/*	void contem(){
	for(int i=0; i><pos; i++){
	if(funcionarios[i].estaNaEmpresa == false){
	System.out.println("\nNome:"+ funcionarios[i].nome + "\tNao esta na empresa");
	}else{
	System.out.println("\nNome:"+ funcionarios[i].nome + "\tEsta na empresa");
	}
	}
}*/
}

CLASSE TESTA EMPRESA

class TestaEmpresa{
	public static void main(String args[]){
	Empresa em= new Empresa();
	em.funcionarios = new Funcionario[10];

	Funcionario[] funcionarios;
	Funcionario f1=new Funcionario();
	em.nome="Loja 10";
	//em.f1.nome="Maria";

	f1.setSalario(1000);
	f1.setNome("Paulo");
	f1.setEstaNaEmpresa(true);
	em.adiciona(f1);

	Funcionario f2=new Funcionario();
	f2.setSalario(2000);
	f2.setNome("Joao");
	f2.setEstaNaEmpresa(false);
	em.adiciona(f2);

	Funcionario f3=new Funcionario();
	f3.setSalario(500);
	f3.setNome("Igor");
	f3.setEstaNaEmpresa(true);
	em.adiciona(f3);

	
	em.mostra();
	
	//em.imprime();

	//em.contem();

	System.out.println(em.nome);
	System.out.println(f1.getNome());

	//em.imprimelistaFuncionarios();

	}
}
>

4 Respostas

Fenak

Desculpa cara… acho q nem entendi sua duvida… tem como detalhar melhor?

somma

Qual a dúvida?

Marky.Vasconcelos

Invés de acessar o atributo assim

funcionario[i].nome;

//use o getter

funcionario[i].getNome();

E assim pros outros atributos também.

J

Valew Mark_Ameba…era isso que nao conseguia fazer!!!

problema resolvido!

Criado 14 de fevereiro de 2008
Ultima resposta 14 de fev. de 2008
Respostas 4
Participantes 4