[resolvido]Dúvida entre variáveis de referência e instância, atributos e membros?

2 respostas
marciojesus

Estou com dúvida se variavel de instância e qdo faço um objeto da classe com new, ou variavel de instancia e a global??
Vamos lá, me ajudem o que e variavel de instancia,membro?
Se eu nao estiver errado variavel global sao aquelas criadas fora da classe, variavel local sao as feitas dentro da classe ou metodo, e instancia e quando faço um objeto
da classe.
valeu pela ajuda, antes que mandem eu procurar no google ja estou dando uma olhada, porque aqui as vezes fica mais claro de entender…
grato.

2 Respostas

A

Acho que foi seu professor que falou de variáveis globais, geralmente no início da aprendizagem de programação os professores iniciam com programação proceidural (métodos)
e criou este conceito de variável global sendo declarada fora do método.

Não existe Variável global em Java!

existem:
Variável local (dentro de métodos)
variável de instância ou atributo (dentro de um classe, mas pertence ao objetos instanciados desta classe)
variável de referência (variável para referenciar um objeto)
variável de classe (variável estática pertencente a classe e comum a todos os objetos da classe)

public class A{

private int id; // variável de instância ou atributo
private static int contator; //variável estática de classe

void metodoA(){
int a = 0  // variável local
}

public static void main(String [] args){

A classeA; // variável de referência

classeA = new A(); //instância de um objeto do tipo A

}

}
S

Variável de referência são variáveis que fazem referencia a objetos (ou seja, tudo o que não for primitivo). Exemplo: Object a, String b, StringBuilder c,…
Variáveis de instancia são os atributos. Tudo o que for declarado dentro de uma classe e fora de qualquer método e que não contem a palavra static na sua declaração são variaveis de instancia (ou atributos). Exemplo:

class SuaClasse {
private String seuAtributo; //atributo ou variavel de instancia
}

Variaveis de classe são aquelas que são declaradas dentro de uma classe e fora de um metodo e que contem a palavra static na sua declaração. Exemplo:

class SuaClasse {
private static int valor; //variavel de classe
}
Criado 6 de março de 2013
Ultima resposta 6 de mar. de 2013
Respostas 2
Participantes 3