Duvida

3 respostas
R

Ola, eu nao consegui aprender como instanciar. Eu estou seguindo uma apostila e no programa que eu estou copiando, esta dando esse erro:

package ex02;

public class Main{

class MeuObjeto

{

String nome;

int idade;

String telefone;
MeuObjeto amigo = new MeuObjeto();

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

amigo.nome = "Joao";

//O erro fica grifado no “nome”

}

}

Se puderem me ajudar…brigado!

3 Respostas

drigo.angelo

1- Bem vindo ao GUJ !!

2- Quando for postar seu código, siga as instruções deste topico

3- Qual IDE você utiliza, recomendo o notepad++ pra quem está começando :stuck_out_tongue:

4- Respondendo a sua pergunta, isso tá muito estranho, você está estudando sub-classes? se você estiver só começando, crie uma classe Main em um arquivo, e dentro dela crie só o método public static void main…

Crie a classe MeuObjeto em um arquivo separado, e deixe os atributos public, daí você vai ter acesso.

Espero ter ajudado
[]'s

Henrique.tenorio
package ex02; 

public class MeuObjeto
{ 
    String nome; 
    int idade; 
    String telefone; 
  
   public static void main(String[] args)
  { 
     MeuObjeto amigo = new MeuObjeto();
     amigo.nome = "Joao"; 
    
   } 
}

Estude um pouco mais.

Tenkara_Kiddo

Olá Rafael,
pelo que estou vendo você está acessando uma variavel de instancia de um método estático,

olhando melhor

MeuObjeto amigo = new MeuObjeto();
public static void main(String ...args)  {

}

se você reparar você não declarou ‘amigo’ como um objeto estatico (objetos estáticos são objetos de classe e so devem ser acessados por uma variavel de instância)
para esse código funcionar você deve trocar amigo para ser uma variavel estática

private static MeuObjeto amigo = new MeuObjeto();

assim o atributo se torna um atributo da classe e você pode usa-lo em metodos estáticos,
para metodos estaticos so se pode utilizar atributos estaticos
para metodos de instancia você pode utilizar estaticos e não estaticos,

dê uma busca por métodos estáticos aqui no forum que você vai entender melhor, (ta cheio de threads sobre isso)

abraços

Criado 26 de janeiro de 2011
Ultima resposta 26 de jan. de 2011
Respostas 3
Participantes 4