Dúvidas em métodos

7 respostas
fmoraislg

Oi,

Estou tentando criar um objeto e nele criar métodos com IF/ELSE e exibir o resultado no main, mas não estou conseguindo.

É uma coisa extremamente simples, mas pra mim...

Vejam:

package metodos;


public class metodos {

    int estoque=20;
    int entrada=25;

    void fluxo(int fluxo){
        if(entrada>estoque)
            System.out.println("Bom estoque");
     else
        System.out.println("Estoque baixo");
    }
}
package metodos;

public class Main {

    
    public static void main(String[] args) {
        
        metodos met = new metodos();

        System.out.println(fluxo);


    }

}

7 Respostas

D

fluxo não está definido na classe Main, e sim na classe metodos. Na classe Main vc criou um objeto do tipo metodos, pra chamar o método fluxo vc tem que usar a referência pro objeto que no caso é met.

fmoraislg

Poderia por favor exemplificar.

Grato.

L
vixi cara primeira coisa seu  metodo fluxo e void ou seja naum vai imprimir nada aki  System.out.println(fluxo);

segunda coisa vc deveria xamar seu metodo com os parenteses neh, e seu metedo recebe um argumento int tabm tente assim? System.out.println(" metodo"+fluxo(7))

Bom resumindo tah td zicado.
public class Metodos {

	int estoque = 20;
	int entrada = 25;

	public void fluxo(int fluxo) {
		if (entrada > estoque)
			System.out.println("Bom estoque");
		else
			System.out.println("Estoque baixo");
	}

}

e na Main

public class Main {

	public static void main(String[] args) {
		new Metodos().fluxo(10);

	}

}
D

Troca a linha System.out.println(fluxo); por met.fluxo(1);
O método fluxo não tem retorna, então vc não pode passar ele pro println.
Sendo que o 1 passado pro método não faz diferença, pois não é usado no método.

fmoraislg

Realmente, é tanta coisa que estou ficando confuso.

new metodos().fluxo(10)

Você poderia me dizer por que o (10)?

Desculpe-me por perguntas simples, sou iniciante.

Obrigado!

L

o seu metodo naum recebe um argumento int?? pois bem passei 10 para ele poderia ser outro numero

veja

public void fluxo(int fluxo) {

e um metodo que naum retorna nada e que recebe um parametro int que vc nomeou de fluxo–> (int fluxo)
tendeu:)

fmoraislg

O que estava querendo fazer era mais ou menos isso:

package metodos;

 public class Main {

     public static void main(String[] args) {
         exemplos exe = new exemplos();

         System.out.println("O numero primeiro eh " + exe.numero1);
         System.out.println("O numero segundo eh " + exe.numero2);
         System.out.println("O numero terceiro eh " + exe.numero3);
         System.out.println("A soma dos numeros eh " + exe.soma);
         System.out.println("A média dos numeros eh " + exe.media);

         {
             if (exe.soma > 15 )
                 System.out.println("Alto número");
             else
                 System.out.println("Numero baixo");
         }

     }

 }
package metodos;


public class exemplos {
    int numero1 = 5;
    int numero2 = 5;
    int numero3 = 2;
    int soma = numero1 + numero2 + numero3;
    int media = soma/4;
}

Estava querendo usar o IF/ELSE dentro da classe exemplos, acho que isso necessita de um aprofudamento em Get Set.

Usei no main e deu certo.

Criado 25 de agosto de 2010
Ultima resposta 25 de ago. de 2010
Respostas 7
Participantes 3