Solucionado (ver solução)
Solucionado
(ver solução)
10
respostas

o método main não foi encontrado na classe funcionário.Funcionário; defina o método main como: public static void main(String[] args)

insira seu código aqui
insira seu código aqui
```

insira seu código aqui ``` /* @author Mario / class Funcionário { private String nome; private double salario;

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

public double getBonus (){ return this.salario * 0.2; } } class TestaFuncioario { public static void main(String[] args) { Funcionário joao = new Funcionário (); joao.SetSalario(1000); System.out.println(joao.getBonus()); }

}

10 respostas
class Funcionário { 
    private String nome; 
    private double salario;

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

public double getBonus (){
     return this.salario * 0.2; 
} 
}
 class TestaFuncioario { 
    public static void main(String[] args) {
         Funcionário joao = new Funcionário (); 
            joao.SetSalario(1000); 
            System.out.println(joao.getBonus());
     }

}

Formatei seu código o erro que ta dando é o nome do titulo?

Seu erro deve ser porque você declarou a sua classe com um acento no á ficando assim Funcionário, e em classe não pode ir acento e , e . essas coisas, arruma o nome da classe deixando apenas Funcionario.

o método main não foi encontrado na classe funcionario.Funcionario; defina o método main como: public static void main(String[] args)

só fica dando isso

Mais você ja declarou assim public static void main(String[] args)

Cara tenta mudar essa sua classe ai de Funcionário com acento e deixa sem esse acento.

Peguei o seu código e formatei.

class Funcionário {
    private String nome;
    private double salario;

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

    public double getBonus() {
        return this.salario * 0.2;
    }
}

class TestaFuncioario {
    public static void main(String[] args) {
        Funcionário joao = new Funcionário();

        joao.SetSalario(1000);

        System.out.println(joao.getBonus());
    }
}

Está compilando normalmente, inclusive a saída do programa é 200.0.

Acredito que tu estejas errando algum procedimento ao testar a classe. Como tu estás fazendo para compilar o código? E como estás executando?

Editado: Java aceita caracteres Unicode tanto em strings como em identificadores. É possível, portanto, utilizar acentos e símbolos, como a letra grega π, por exemplo. No entanto, essa não é uma boa prática.

cara, to usando o net beans.

Aperto f6 pra rodar.. ai dá esse erro.

Pensei que fosse na hora de criar a classe que tava errando.

Não sei como prosseguir

Mario faz o seguinte ok? exclui o seu projeto ai e cria um novo, mais por favor sem acento porque é isso o erro.

solução!

Testei o teu código no Netbeans, está funcionando normal.

Qual o nome que tu destes ao arquivo que contém essas classes? Se não for TestaFuncioario, tenta refatorar o arquivo ou então muda o nome da classe. É importante que a classe que contém o método main esteja em um arquivo de igual nome. Essa, aliás, é uma prática muito saudável, e, em alguns casos, obrigatória. E definir várias classes em um único arquivo é uma das piores práticas possíveis.

Observação:

Há pessoas que insistem em dizer que o acento é o problema, isto está simplesmente incorreto. O uso de acentos é inválido em diversas outras linguagens, como C ou C++, mas em java é meramente uma péssima prática de programação, não um erro de sintaxe. Aos que duvidam, segue o link com a especificação da linguagem.

https://docs.oracle.com/javase/specs/jls/se8/jls8.pdf

Leiam as páginas 22-23, que versam sobre identificadores.

Consegui. Tive que renomear e colocar o testaFuncionario como public class

class Funcionario { private String nome; private double salario;

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

public double getBonus (){ return this.salario * 0.2; } } class TestaFuncioario { public static void main(String[] args) { Funcionário joao = new Funcionário (); joao.SetSalario(1000); System.out.println(joao.getBonus()); }

}