Java programação: observar escopo dentro de um bloco

desenvolvedores Java muitas vezes experimentam problemas descobrir por que um aplicativo está se comportando bem quando se deparam com um problema de acesso bloco. A orientação básica é que qualquer variável criada dentro de um bloco é definido apenas dentro desse bloco. Por exemplo, quando você olha para o código a seguir, você vê um cenário de acesso bloco típico.

// Crie uma variável dentro de um block.for (int i = 0- i lt; 10- i ++) // exibe o valor desse variable.System.out.println ("O valor de i é: " + I) - // acesso fora do bloco não work.System.out.println ("O valor de i é: " + I) -

O exemplo que se mostra o valor de i dentro do loop (um tipo de bloco) sem problema. No entanto, a tentar aceder i fora do bloco não é aceitável porque a variável não está definida. O compilador vai pegar esse erro.

Outro potencial problema ocorre quando uma variável é definida no pedido e também dentro de um bloco. Porque esta situação é susceptível de criar problemas, versões mais recentes do Java não vai permitir que o tipo de código mostrado aqui:

void main (String [] args) public static {// Definir um variable.int i = 0 - // Crie uma variável dentro de um block.for (int i = 0- i lt; 10- i ++) // exibe o valor desse variable.System.out.println ("O valor de i é: " + I) - // acesso fora do bloco não work.System.out.println ("O valor de i é: " + I) -}


O compilador nem sempre vai impedi-lo de tiro no próprio pé. Em muitas situações, o desenvolvedor faz algo com a variável e não entende as consequências. Por exemplo, o seguinte código é perfeitamente legal em Java.

Video: Gerência de Escopo - Planejamento do Escopo

void main (String [] args) public static {// Definir um variable.int i = 0 - // Crie uma variável dentro de um block.for (i = 0- i lt; 10- i ++) // exibe o valor desse variable.System.out.println ("O valor de i é: " + I) - // acesso fora do bloco não work.System.out.println ("O valor de i é: " + I) -}

O loop mostra os valores de 0 a 9 por causa da condição dentro do circuito para declaração. A chamada final para System.out.println () exibe um valor de 10, não 0 ou 9 como alguns desenvolvedores poderia esperar.

Video: Gestão de Projeto

A parte i ++ da declaração ocorre, em seguida, a condição é avaliada, de modo que o valor final do i é 10, não 9, porque ele tem que ser 10 para que a condição para se tornar falsa.

O ponto é que você deve considerar como um bloco trabalha com uma variável, a fim de determinar se você pode acessar a variável e que o valor irá conter na saída do bloco.


Publicações relacionadas