Cursos / Eletrônica / Programação Estruturada / Aula 02
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:
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:
Versão 5.3 - Todos os Direitos reservados