Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Arthur Warmling

Iniciante Java

Recommended Posts

Boa noite galera, desculpa o incomo. Estou tendo dificuldade com Java para Desktop. Comecei esse semestre a matéria de POO e o professor está nos ensinando Java com Eclipse... Nunca mexi com Java, primeira vez... Gostaria que alguem pelo menos me desse uma luz neste exercício, pois nem faço idéia de como iniciar ele.

 

Obrigado!

 

Exerc7 -

Crie uma classe Funcionario que possua como atributos um identificador, um nome, a idade e o salário. O acesso aos atributos devem ser realizados somente através de métodos, ou seja, deve-se garantir o encapsulamento. Além disso, crie uma classe que possua um método que receba duas instâncias da classe Funcionario e promove como retorno o funcionário com maior salário.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa noite amigo,

Infelizmente nós podemos ajudar plenamente porém estaríamos interferindo em sua aprendizagem no qual creio que não é o objetivo de sua instituição você necessita mostrar suas dúvidas a seu instrutor (professor) para que ele possa sana-la se você não sabe nem por onde começar está na hora de correr atras do prejuízo e até mesmo do nosso famoso GOOGLE que tem tudo que você precisa.

Procure uma base veja alguns exemplos e faz o seu baseado neles.

Realmente isso ai é o inicio do inicio e você precisará para se dar bem nos próximos processos.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim , obrigado pelas dicas. Eu comecei com o seguinte, na pasta Source fiz o seguinte:

package Funcionarios;

public class Funcionarios {

	int idFunc;
	String NomeFunc = "";
	int IdadeFunc;
	double SalFunc;
	
	public int getIdFunc() {
		return idFunc;
	}
	public void setIdFunc(int idFunc) {
		this.idFunc = idFunc;
	}
	public String getNomeFunc() {
		return NomeFunc;
	}
	public void setNomeFunc(String nomeFunc) {
		this.NomeFunc = nomeFunc;
	}
	public int getIdadeFunc() {
		return IdadeFunc;
	}
	public void setIdadeFunc(int idadeFunc) {
		this.IdadeFunc = idadeFunc;
	}
	public double getSalFunc() {
		return SalFunc;
	}
	public void setSalFunc(double salFunc) {
		this.SalFunc = salFunc;
	}
	
}

E na de teste eu coloquei isto:

package Funcionarios;

public class TesteFuncionarios {
	public static void main(String args[]) {
		Funcionarios f1 = new Funcionarios();
		f1.setIdFunc(1);
		f1.setNomeFunc("Arthur Warmling");
		f1.setIdadeFunc(19);
		f1.setSalFunc(3500.00);
		
		Funcionarios f2 = new Funcionarios();
		f2.setIdFunc(2);
		f2.setNomeFunc("nomeFunc2");
		f2.setIdadeFunc(19);
		f2.setSalFunc(2500.00);
	}

}

A parte é que estou em dúvida é a seguinte:

 

Além disso, crie uma classe que possua um método que receba duas instâncias da classe Funcionario e promove como retorno o funcionário com maior salário.

 

Como faço esta parte, estou lendo as apostilas do Caelum.

 

Obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites
/*Além disso, crie uma classe que possua um método que receba duas instâncias da classe Funcionario e promove como retorno o funcionário com maior salário.*/

public Funcionarios funcionarios(Funcionarios f1, Funcionarios f2) {
     if(f1.getSalario() > f2.getSalario())
          return f1;
     else
          return f2
}
 

Bom, eu não programo em Java a um tempo, mas fiz um base para ti, estude o código, qualquer dúvida é só perguntar amigo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

"Além disso, crie uma classe que possua um método que receba duas instâncias da classe Funcionario e promove como retorno o funcionário com maior salário."

 

Você precisará criar uma outra classe para usar o método citado pelo @AndrePls e não colocá-lo na classe Funcionarios.java. Por exemplo, uma classe chamada FuncionariosUtil.java:

public class FuncionarioUtils {
    
    public Funcionarios getMaiorSalario( Funcionarios f1, Funcionarios f2 ){
        if( f1.getSalFunc() > f2.getSalFunc() )
            return f1;
        return f2;
    }
}

Depois você irá instanciar essa classe e passar os dois objetos como argumento para o método.

/* no método main... */

FuncionarioUtils fUtil = new FuncionarioUtils();
System.out.println("O Funcionário com maior salário é " + fUtil.getMaiorSalario(f1, f2).getNomeFunc() );

Ou então:

/* no método main... */

FuncionarioUtils fUtil = new FuncionarioUtils();
String nomeDoFuncionario = fUtil.getMaiorSalario(f1, f2).getNomeFunc();
System.out.println("O Funcionário com maior salário é " + nomeDoFuncionario);

Ou então:

/* no método main... */

FuncionarioUtils fUtil = new FuncionarioUtils();
Funcionarios funcMaiorSalario = fUtil.getMaiorSalario(f1, f2);
System.out.println("O Funcionário com maior salário é " + funcMaiorSalario.getNomeFunc());

Como preferir.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então, para testar, você pode fazer assim:

public class TesteFuncionarios {
        public static void main(String args[]) {
                Funcionarios f1 = new Funcionarios();
                f1.setIdFunc(1);
                f1.setNomeFunc("Arthur Warmling");
                f1.setIdadeFunc(19);
                f1.setSalFunc(7500.00);
               
                Funcionarios f2 = new Funcionarios();
                f2.setIdFunc(2);
                f2.setNomeFunc("nomeFunc2");
                f2.setIdadeFunc(19);
                f2.setSalFunc(5500.00);

                System.out.println(f1.getMaiorSalario(f1, f2).getNomeFunc());
               
        }
       
}

/*Seria interessante se essa função getMaiorSalario fosse "static", não sei se já aprendeu isso, mas é interessante dar uma pesquisada sobre.*/

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.