Uma variável é um recurso das linguagens de programação utilizado para armazenar valores em memória. Assim, sempre que precisarmos desse valor, basta referenciarmos essa variável. Em Java, podemos declarar variáveis, variáveis finais e constantes. As variáveis podem ter seu valor modificado a qualquer momento, enquanto as variáveis finais e constantes recebem um valor e não podem ser alteradas.
Neste documento será apresentado como declarar e utilizar variáveis, variáveis finais e constantes.
Variáveis
Na linguagem Java, declaramos uma variável informando o tipo de dados que ela poderá receber e seu nome.
Exemplos de declaração de variáveis:
int numero;
String nome;
Neste código informamos que a variável numero é do tipo inteiro e, por isso, só poderá receber valores desse tipo. O mesmo comportamento é válido para a variável nome do tipo String.
Nota: Como a linguagem Java é fortemente tipada, a declaração do tipo é obrigatória.O tipo de dado pode ser qualquer um dos tipos primitivos (como int, float, boolean), assim como qualquer outra classe/interface, seja ela nativa do Java (como String, ArrayList) ou criada por você ou por terceiros (como Produto, ProdutoDAO).
Veja exemplos de declaração de variáveis dentro do método main:
package br.com.devmedia;
public class Main {
public static void main(String[] args) {
int numero = 20;
String nome = "Silvana";
System.out.println(numero); // vai imprimir "20"
System.out.println(nome);// vai imprimir "Silvana"
}
}
Nomeação de variáveis
A nomeação de variáveis precisa ser feita respeitando algumas regras e convenções:
- Pode conter letras, números e o caractere sublinhado (_), mas não pode começar com um número;
- Devem ser declaradas em minúsculo. Caso sejam nomes compostos, a primeira letra de todas as palavras, menos da primeira, deve ser maiúscula (Camel Case);
- Java é uma linguagem case sensitive. Assim, numeroUm é diferente de numeroum.
Exemplos de declaração de variáveis:
int nome123;
float _salarioBase;
String 1erro; // Erro de compilação por iniciar com caractere numérico.
Variáveis de classe
Ao declarar uma variável dentro de uma classe, antes do tipo também podemos especificar o modificador de acesso.
Exemplo de declaração de variável:
class Funcionario {
private int matricula;
private String nome;
}
A palavra private é um modificador de acesso. Em Java, também temos as opções public e protected. Não se preocupe com os modificadores de acesso neste momento, eles serão abordados mais a frente quando falarmos sobre orientação a objetos.
No Java quando precisamos lidar com dados que não devem ser alterados durante a execução do programa criamos variáveis finais ou constantes. Veja a seguir como uma variável final e uma constante são criadas.
Variáveis finais
Como vimos, uma variável final é declarada quando precisamos lidar com dados que não devem ser alterados durante a execução do programa. No Java declaramos uma variável final utilizando a palavra-chave final antes do tipo da variável. Veja abaixo um exemplo de declaração de uma variável final dentro do método main:
package br.com.devmedia;
public class Main {
public static void main(String[] args) {
final String msgPadrao = "Olá!";
}
}
A variável final msgPadrao recebeu o valor "Olá!" e não pode ser alterado.
Uma observação quanto a criação de uma variável final, é que o seu valor não precisa ser atribuído no momento da sua criação. Podemos primeiro criar a variável final e atribuir o seu valor posteriomente. Veja um exemplo abaixo:
package br.com.devmedia;
public class Main {
public static void main(String[] args) {
final String msgPadrao;
msgPadrao = "Olá!";
}
}
Mas cuidado, lembre-se de que só podemos atribuir o valor a uma variável final uma única vez. Do contrário o compilador vai gerar erro.
Veja outros exemplos de declaração de variáveis finais:
package br.com.devmedia;
class Main {
public static void main(String[] args) {
final String nomePagina = "home";
final double e = 1.234e2;
System.out.println(nomePagina); // vai imprimir "home"
System.out.println(e);// vai imprimir "1.234e2"
}
}
Constantes
As constantes são melhor entendidas junto com o conceito de orientação a objetos e classes, porém vamos apresentar a sua definição mas não se preocupe, pois elas serão melhor abordadas mais a frente.
Assim como uma variável final, uma constante é declarada quando precisamos lidar com dados que não devem ser alterados durante a execução do programa. No Java declaramos uma constante utilizando as palavras-chave static final antes do tipo da variável. Veja abaixo um exemplo de declaração de uma constante:
package br.com.devmedia;
public class Main {
public static final float PI = 3.1416F;
public static void main(String[] args) {
System.out.println(PI);
}
}
Uma observação é que uma constante é criada na classe, ou seja, fora do método. Por esse motivo utilizamos o modificador de acesso 'public' (linha 4) que veremos mais a frente quando estudarmos sobre classes.
Diferente de uma variável final, uma constante precisa receber o seu valor no momento em que ela for declarada.
Por convenção, usamos letras maiúsculas para declarar constantes e assim distingui-las das variáveis.
Nota: Constantes são indicadas para substituir “números/valores mágicos”, isto é, aqueles números que aparecem no meio do código criado para realizar algum cálculo, agregando mais significado e facilitando a compreensão.Exemplo prático
Para demonstrar mais alguns exemplos de como declarar variáveis em Java, observe as possibilidades a seguir.
Exemplo de uso de variáveis dentro do método main:
package br.com.devmedia;
public class Main {
public static void main(String[] args) {
final float pi = 3.146f;
final double e;
e = 1.234e2;
String nome = "Estevao Dias";
String dataAniversario = "23/05/2000";
int lote = 35456;
boolean aprovado;
aprovado = true;
System.out.println(pi); // vai imprimir "3.146f"
System.out.println(e);// vai imprimir "1.234e2"
System.out.println(nome);// vai imprimir "Estevao Dias"
System.out.println(dataAniversario);// vai imprimir "23/05/2000"
System.out.println(lote);// vai imprimir "35456"
System.out.println(aprovado);// vai imprimir "true"
}
}