Instanciando uma classe atraves de um array, esta retornando um erro![RESOLVIDO]

3 respostas
D

Pessoal, continuando com minhas brincadeiras, achei um outro erro. Eu tenho uma classe Casa e uma classe Porta. Eu criei uma variavel do tipo Porta e instanci-ei-a(caramba, e assim que escreve? :shock:)
Isso deu perfeito. 8) Ai eu decidi criar 3 portas, entao instanciei 3 portas: porta1, porta2 e porta3. Maravilha!!! :smiley: Ai lembrei que eu poderia fazer algo mais organizado, e utilizar uma array. Ai comecou o meu problema… :x
Segue o codigo:

public class Casa { Porta[] porta = new Porta[3]; porta[0] = new Porta(); porta[1] = new Porta(); porta[2] = new Porta(); }
Eu ate procurei pelo google, mas eles dizem para utilizar este mesmo codigo! :shock:
Acusa o seguinte erro: ´]´ expected
invalid method declaration; return type required

Depois disso nao entendi mais nada :frowning:
Ate achei uma solucao, fazendo o seguinte:

public class Casa { Porta[] porta = new Porta[]{new Porta(),new Porta(),new Porta()}; }
Mas ainda assim gostaria de saber o que que deu de errado no primeiro codigo. Ate isso ja tentei fazer:

public class Casa { Porta[] porta = new Porta[3]; Porta port = new Porta(); porta[0] = port; porta[1] = port; porta[2] = port; }
Alguem tem uma ideia do que esteja dando errado?

3 Respostas

hesenger

Acho que o erro é pq não está dentro de um método:

public class TesteArray {

	public static void main(String[] args) {
		String[] os = new String[2];
		os[0] = "Teste 1";
		os[1] = "Teste 2";
		
		for (String s : os) {
			System.out.println(s);
		}
		
	}

}

tente assim...

hesenger

Acho que o erro é pq não está dentro de um método:

public class TesteArray {

	public static void main(String[] args) {
		String[] os = new String[2];
		os[0] = "Teste 1";
		os[1] = "Teste 2";
		
		for (String s : os) {
			System.out.println(s);
		}
		
	}

}

tente assim... ou se for o caso alimente a array no construtor da class

D

Tens toda razao, muito obrigado. Meu pai é professor de Java, e acabei de pedir ajuda para ele. Numa classe, fora dos metodos, so pode existir atribuicoes. Qualquer outro tipo de codigo tem que ser feito dentro de um metodo :smiley:
T+

Criado 4 de novembro de 2008
Ultima resposta 4 de nov. de 2008
Respostas 3
Participantes 2