A linguagem Java tem sete tipos de variáveis:
Variável de classe: campo declarado dentro de uma classe usando a palavra chave static ou ainda campo declarado dentro de uma interface usando ou não o modificador static; Estas variáveis são criadas quando a classe ou interface correspondente é preparada.
Variável de instância: campo declarado dentro de uma classe sem utilizar a palavra chave static. Estas variáveis são criadas sempre que são criadas instâncias da classe correspondente;
Componentes de arranjo: são variaveis anônimas que são criadas sempre que um arranjo é instanciado.
Parâmetros de método: argumento de um método; estas variáveis são criadas sempre que é feita uma chamada de método;
Parâmetros de construtores: argumento de um construtor; são criadas sempre que são instanciados objetos invocando o construtor correspondente.
Parâmetros de tratadores de exceção: argumento presente na clausula catch de uma comando try/catch; são criadas sempre que uma exceção é apanhada por uma cláusula catch de um comando try.
Variáveis locais: são declaradas através de comandos
de declaração de variáveis locais; Sempre que o fluxo
de controle entra em um bloco ou comando for uma nova variável
é criada;