Cursos / Jogos Digitais / Programação Estruturada / Aula

arrow_back Aula 02 - Tipos de dados, constantes e variáveis

2. Variáveis e constantes

Agora que já conhecemos os tipos de dados que são manipulados pela linguagem Java, vamos aprender a reservar espaços de memória para as variáveis. As variáveis devem ser declaradas antes de serem utilizadas e a forma geral de se fazer isso é a seguinte:

tipo_da_variável lista_de_variáveis;

Note que após apresentar o tipo de uma variável, podemos declarar diversas variáveis ao mesmo tempo. Por exemplo, são declarações válidas de variáveis:

Você também pode declarar uma variável e já inicializá-la, como nos exemplos a seguir:

Em Java, a declaração das variáveis pode ocorrer em diferentes lugares dentro do código. A forma e o local de declaração de uma variável determina o escopo da variável, ou seja, o trecho de código na qual a variável é válida. Uma variável é chamada de global se ela pode ser acessada em qualquer parte de seu sistema. Como um sistema em Java possui várias classes (módulos que contêm declarações de variáveis e rotinas), isso quer dizer que uma variável declarada em uma classe como global pode ser acessada por qualquer outra classe do seu sistema.

Caso a variável declarada não seja global, ela será local a um determinado escopo, ou seja, poderá ser manipulada por apenas parte do código da classe na qual ela foi declarada. Para melhor exemplificar os conceitos apresentados, vamos examinar o seguinte trecho de código.

A variável varGlobal, declarada na linha 2, é considerada uma variável global e é acessível em qualquer parte do programa. Isso porque ela foi declarada usando-se as palavras-chave da linguagem public static. Essa forma de declaração não é aconselhada, visto que variáveis globais podem dificultar a manutenção dos seus programas. Observe que se a variável é global, ela pode ser alterada por qualquer parte do programa. Caso você precise alterar uma rotina que modifica o valor de uma variável global, precisará olhar todo o restante do código do seu sistema para ter certeza de que sua alteração não irá modificar erroneamente o comportamento de alguma outra rotina do programa que também utilize aquela variável global.

Já a variável varLocalClasse, declarada na linha 03, é uma variável local à classe (chamada em POO como variável de instância), ou seja, seu escopo é o corpo da classe. Isso porque ela foi declarada fora de qualquer uma das rotinas declaradas na classe Programa (rotinas main e rotina2). Note que fazemos o uso de private static ao invés de public static ao declararmos variáveis locais a uma classe. Observe também que tanto o seu valor como o valor da variável global varGlobal estão sendo impressos nas rotinas main e rotina2 (ver linhas 13 e 14, e 20 e 21).

Temos também uma variável chamada de varLocalRotina que foi declarada no início da rotina main (linha 06). Variáveis declaradas dentro de rotinas não fazem uso das palavras-chaves public static, ok? Você entenderá isso melhor na disciplina de Programação Orientada a Objetos. O escopo de varLocalRotina vai do próximo comando (linha 07) até o último comando da rotina (linha 15). Variáveis declaradas como parâmetros de rotinas (funções ou procedimentos) possuem escopo similar: todo o corpo da rotina.

Temos também a variável varLocalComando (linha 08), que foi declarada dentro do bloco de código do comando if da linha 07. Isso quer dizer que o escopo dessa variável vai da linha 07 até a última linha do bloco do if (linha 10). Note que não tem como se ter acesso a essa variável na linha 12, que fica fora do bloco do if. Também não dá para acessar as variáveis varLocalRotina e varLocalComando a partir das linhas 18 e 19, pois o escopo dessas variáveis não se estendem a códigos de outras rotinas. Se forem removidos os comentados desses comandos, eles irão gerar um erro de compilação.

Também é importante esclarecer o conceito de constantes. Constantes são valores fixos que não podem ser alterados durante a execução do programa. Para declarar uma constante em Java, adicionamos a palavra final a essa declaração. Veja como as variáveis mostradas poderiam ser declaradas como constantes:

Basicamente, o que muda é o uso da palavra-chave final usada na declaração para indicar que o nome indicado é uma constante e não uma variável. Para definir o nome das variáveis e constantes, você deve seguir certas regras que garantem a legibilidade e corretude do código. Algumas dessas regras devem realmente ser seguidas, pois se assim não for feito, o compilador indicará um erro. São regras recomendadas:

  1. O primeiro caractere deve ser uma letra, um _ (underscore) ou o símbolo $;
  2. O restante do nome deve ser formado pelos seguintes caracteres: letras, números, underscore ou $;
  3. não se deve usar espaços em branco nos nomes, mas usar os nomes juntos, colocando a primeira letra de cada um dos nomes seguintes em maiúsculo, como alturaAluno para representar a altura de um certo aluno;
  4. não se deve utilizar acentos nem cedilha.

Versão 5.3 - Todos os Direitos reservados