O que é uma Variável?
É um local na memória onde é armazenado algum tipo de informação para serem utilizadas
Existem duas versões de variáveis
Váriaveis primitivas e Variáveis de referência...vamos entendê-las:
Podemos usar :
- Váriáveis como estado do Objeto (váriáveis de instancia)
- Váriaveis locais (váriáveis declaradas no método)
- Variáveis como argumentos (valores enviados para um método pelo código que chamou)
- Variáveis como tipos de retorno (valores retornados ao código que chamou o método)
Variáveis primitivas contém valores básicos, que são elas:
- inteiros
- boleanos
- e de números de ponto flutuante;
Variáveis de referência de objeto contêm referência a objetos;
Tipos de Variáveis
Além de um tipo a variável deve ter um nome
int conta;
tipo nome
Uma variável tem um tamanho e um tipo, o qual existem tamanhos diferentes para variáveis primitivas e esse tamanho tem nomes.Quando declaramos uma variável em java , também declaramos um tipo que são eles os quatro tipos primitivos:
longo int curto byte
Cada variável primitiva possui uma quantidade fixa de bits (tamanho).Mostrado a seguir o tamanho das seis variáveis numéricas em java:
byte 8
curto 16
int 32
longo 64
float 32
double 64
Tipos primitivos
Tipo Quantidade de bits Intervalos de valores
Boleano e char
Boleano (verdadeiro ou falso)
char 16 bits
numéricos
byte
curto
int
longo
ponto flutuante
float 32 bits
double 64 bits
Declarações primitivas com atribuições:
Exemplo:
int x;
x= 25;
boolean java = true;
double d = 4545.90;
char c = "fe";
int z= x;
boolean javaZone;
javaZone = false;
boolean desligar;
desligar = java;
long big = 3256566;
float f = 32.5f;
Declarando variáveis de várias maneiras:
- digitar uma literal depois do sinal de igualdade (X=12 java=true);
- atribuir o valor de uma varoável a outra (X+Y)
- usar expressão combinando os dois (X=Y+43)
Obs: o compilador não deixará inserir uma quantidade maior em um recipiente pequeno pois há possibilidade de derramamento, ou seja, nao pode colocar muitos inteiros em um contêiner de tamanho byte, Exemplo:
int x=24;
byte b = x;
// não funcionará porque o valor de x é um valor suficientemente baixo para caber em um tipo byte
Relembrando:
os oito tipos primitivos
Boolean char byte short int long float double
Variáveis não primitivas (objetos)
Não há uma variável de REFERÊNCIA de objeto, uma variável de referência de objeto contém bits que representa uma maneira de como acessar um objeto, nao contendo o objeto, e sim um ponteiro, ou endereço.Não pode inserir um objeto a uma variável.Os objetos residem apenas um local.Enquanto a variável primitiva fica cheia de bits que representa o valor real da variável.Uma variável de referência fica cheia de bits que representam uma maneira de chegar o objeto.
Operador (.)
Usamos o operador (.) em uma variavel de referencia : "use o que está antes do ponto para me trazer o que está depois do ponto". Exemplo:
pessoa.cantar();
"use o objeto referenciado pela variavel pessoa para chamar o método cantar()."
Pessoa p = new pessoa(); // cria o Objeto
p.cantar(); // acessando
(podemos pensar na variável de referência de Pessoa como o controle remoto de um objeto Pessoa.Que usamos para acessar o objeto e fazer algo (chamar métodos).
Variável de Matriz
Uma variavel de matriz é o controle remoto de um objeto matriz.
Obs: a matriz será um objeto , mesmo contendo elementos primitivos.Então as matrizes são sempre objetos.
Um exemplo:
1 - Declarando uma variável de matriz Aluno
Aluno [ ] al;
2 - Criando uma nova matriz Aluno com tamanho igual a 3 e a atribui a variável Aluno[] al já declarada
al = new Aluno[3];
3 - criando novos objetos Aluno e atribuindo os elementos da matriz.
al [0] = new Aluno;
al [1] = new Aluno;
Objeto em uma matriz:
// criando uma matriz aluno
Aluno [ ] aluno = new Aluno [3];
Aluno [0] = new Aluno();
// acessando usando as referencias da matriz
aluno[0].name = "Gisa";
aluno[0].estudar();