Erro em compilação

Galera, sou iniciante no mundo Java e tô lendo a apostila da Caelum - Java Orientação a Objetos- e tentei fazer um dos primeiros exercícios e na hora de compilar só dá erro.

Tá aqui o exercício:

  1. Na empresa onde trabalhamos, há tabelas com o quanto foi gasto em cada mês. Para fechar o balanço do
    primeiro trimestre, precisamos somar o gasto total. Sabendo que, em Janeiro, foram gastos 15000 reais, em
    Fevereiro, 23000 reais e em Março, 17000 reais, faça um programa que calcule e imprima o gasto total no
    trimestre. Siga esses passos:

a) Crie uma classe chamada BalancoTrimestral com um bloco main, como nos exemplos anteriores;
b) Dentro do main (o miolo do programa), declare uma variável inteira chamada gastosJaneiro e inicialize-a
com 15000;
c) Crie também as variáveis gastosFevereiro e gastosMarco, inicializando-as com 23000 e 17000, respectivamente,
utilize uma linha para cada declaração;
d) Crie uma variável chamada gastosTrimestre e inicialize-a com a soma das outras 3 variáveis:
int gastosTrimestre = gastosJaneiro + gastosFevereiro + gastosMarco;
e) Imprima a variável gastosTrimestre.

Eu escrevi assim:

class BalancoTrimestral

  {
public static void main(String args[]);



   {

    int gastosJaneiro = 15000;
    int gastosFevereiro = 23000;
    int gastosMarco = 17000;
    int gastosTrimestre = gastosJaneiro + gastosFevereiro + gastosMarco;

System.out.println(gastosTrimestre);
    }
    }

O que há de errado?

O que tem de errado?

Tenta assim:

public class BalancoTrimestral {
public static void main(String args[]) {

int gastosJaneiro = 15000;
int gastosFevereiro = 23000;
int gastosMarco = 17000;
int gastosTrimestre = gastosJaneiro + gastosFevereiro + gastosMarco;

System.out.println(gastosTrimestre);
}
}

Por favor, usem a tag code para postarem seus códigos.
Leiam aqui: http://www.guj.com.br/java/50115-voce-e-novo-no-guj-vai-criar-um-topico-e-colar-seu-codigo-fonte-leia-aqui-antes-por-favor

[]'s

Tire o ponto e virgula da classe main:

fazendo isso:

public static void main(String args[]); 

Vc indica que o seu metodo não está pronto para ser usado, esse tipo de metodo seria metodos de classes abstratas ou de interface.

Tire o ponto e virgula coloque uma chaves, onde indica o inicio das instruções que o meotodo main vai receber, ou seja ele vai executar tudo que estiver dentro de abre e fecha chaves, exemplo:

{ //inicio da instrução

executa isso...

} //fim da instrução

Exemplo com seu código:


class BalancoTrimestral

{
	public static void main(String args[]) {

		int gastosJaneiro = 15000;
		int gastosFevereiro = 23000;
		int gastosMarco = 17000;
		int gastosTrimestre = gastosJaneiro + gastosFevereiro + gastosMarco;

		System.out.println(gastosTrimestre);
	}
}

Boa sorte.

elielmiranda, a classe que contém o método main precisa ser pública.

public class BalancoTrimestral { }...
Na assinatura do método main não existe o ponto é vírgula que você colocou antes de abrir chaves.

[]'s

Funcionou. Valeu msm! O erro era besta. Eu coloquei “;” (ponto e vírgula) depois de: public static void main(String args[])

[quote=davidbuzatto]elielmiranda, a classe que contém o método main precisa ser pública.

public class BalancoTrimestral { }...
[]'s[/quote]

Valeu cara, vou lembrar disso tudo, principalmente a parte do método main!

[quote=Fexx]Tire o ponto e virgula da classe main:

fazendo isso:

public static void main(String args[]); 

Vc indica que o seu metodo não está pronto para ser usado, esse tipo de metodo seria metodos de classes abstratas ou de interface.

Tire o ponto e virgula coloque uma chaves, onde indica o inicio das instruções que o meotodo main vai receber, ou seja ele vai executar tudo que estiver dentro de abre e fecha chaves, exemplo:

{ //inicio da instrução

executa isso...

} //fim da instrução

Exemplo com seu código:


class BalancoTrimestral

{
	public static void main(String args[]) {

		int gastosJaneiro = 15000;
		int gastosFevereiro = 23000;
		int gastosMarco = 17000;
		int gastosTrimestre = gastosJaneiro + gastosFevereiro + gastosMarco;

		System.out.println(gastosTrimestre);
	}
}

Boa sorte. [/quote]

Valeu brother!

Nesse caso acredito que não é necessario que a classe esteja com o modificado public, como package ela rodará normal, o que implicará que a visibilidade deste objeto seja apenas nesse pacote.