Escopo de variáveis/métodos em Java | Explicado

Escopo de variáveis/métodos em Java | Explicado
No mundo da programação, o termo escopo refere -se à área de um programa no qual certos dados são acessíveis. Nas linguagens de programação, as variáveis ​​e os métodos devem ter um nome auto-explicativo e também deve ser único, no entanto, ao mesmo tempo, você deve manter um nome único, auto-explicativo e conciso, que pode ser um pouco difícil Se o programa for muito demorado.

Portanto, as linguagens de programação oferecem o conceito de escopo, que diz que nem todas as variáveis/métodos existem em todo o programa, em vez disso, essas variáveis ​​e métodos estarão acessíveis na área em que são criados.

Este artigo apresenta uma compreensão profunda dos seguintes conceitos:

  • Escopo de variável em java
  • Escopo de nível de classe em java
  • Escopo no nível de método em java
  • Escopo no nível do bloco em java

Então vamos começar!

Escopo de variável em java

Ele determina se a variável estará acessível em todo o programa, dentro de um método, ou é acessível em outras classes também. Assim, em palavras simples, o escopo das variáveis ​​determina que as variáveis ​​são acessíveis apenas dentro da área onde são criadas.

Exemplo

O trecho abaixo fornecerá uma melhor compreensão do escopo variável

classe pública MethodScope
public static void main (string [] args)
// A variável "nome" não pode ser usada aqui
String name = "John";
// Nome "Nome" pode ser usado em qualquer lugar do método
Sistema.fora.println (nome);

Vamos considerar um exemplo para testar qual será a saída, se tentarmos acessar uma variável antes de sua declaração:

O trecho acima autentica que a variável antes de sua declaração não pode ser acessada.

Escopo de nível de classe em java

As variáveis ​​declaradas dentro de uma classe podem ser acessadas por todas as funções nessa classe, dependendo do seu modificador/especificador de acesso I.e. público, privado, etc. Em alguns casos (eu.e. Nos modificadores de acesso público e usando objetos dessa classe específica), podemos acessar e chamar as variáveis ​​e métodos fora da classe também.

Exemplo

Para o profundo entendimento dos conceitos, considere o trecho de código abaixo:

pacote javacope;
classe Classexample1
public string var1;
private int var2;
public void function1 (string var1, int var2)
// var1, var2 pode ser acessado aqui
Sistema.fora.println ("function1");

função vazia privada2 (int var3)
// var1, var2 pode ser acessado aqui
Sistema.fora.println ("function2");


classe pública mainClass
public static void main (string [] args)
Classexample1 obj = novo Classexample1 ();
// variáveis ​​públicas podem ser acessadas nesta classe
// Métodos/funções públicos podem ser chamados daqui
function1 ("escopo", 5);
Nome da string = OBJ.var1;
// variáveis ​​privadas podem ser acessadas nesta classe
int id = obj.var2; // Lança um erro, não pode acessar variáveis ​​privadas de outra classe aqui
// Métodos/funções privados não podem ser chamados daqui
obj.function2 (4);

O trecho de código completo será assim:

A partir do trecho acima, vimos que as variáveis ​​e métodos públicos podem ser acessados ​​e chamados em outras classes também usando o objeto da classe. No entanto, não podemos acessar as variáveis ​​privadas de uma classe para outra classe, mesmo com a ajuda de um objeto de classe.

Escopo no nível de método em java

A variável declarar/criada dentro do método estará acessível em qualquer lugar nesse método após sua declaração, no entanto, não seria acessível antes de sua declaração. Além disso, acessar a variável de um método dentro do outro método não é possível e, se falarmos sobre métodos especificamente, podemos chamar um método em outros métodos também.

O snippet abaixo fornecerá uma melhor compreensão do escopo do método em Java:

Exemplo

Vamos considerar a captura de tela abaixo para uma profunda compreensão do escopo no nível do método:

A partir do trecho acima, fica claro que não podemos acessar a variável de um método em outros métodos, no entanto, podemos chamar um método de outros métodos.

Escopo no nível do bloco em java

Tudo o que vem dentro do Suportes encaracolados é referido como escopo de bloco e as variáveis ​​criadas no bloco de código serão acessíveis pelo código que se vira entre os aparelhos encaracolados. As variáveis ​​declaradas dentro do escopo do bloco não seriam acessíveis fora do escopo do bloco.

Exemplo

Neste exemplo, criamos duas variáveis ​​com o escopo no nível do método e inicializamos alguns valores:

public static void main (string [] args)
String name = "John";

int id = 0;
para (int i = 0; i <= 5; i++)
id ++;
if (id == 4)
Sistema.fora.println ("id:" + id);
Sistema.fora.println ("nome:" + nome);




Utilizamos o loop for que itera cinco vezes e imprime o nome Quando “id = 4”. O Snippet abaixo fornecerá uma compreensão completa do escopo e também exibirá a saída:

O trecho verifica que acessa com sucesso as duas variáveis ​​i.e. nome, id.

As variáveis ​​criadas no nível do bloco não seriam acessíveis antes do início ou após o final do escopo no nível do bloco, como mostrado na captura de tela abaixo:

O trecho acima verifica se ocorre um erro quando tentamos acessar a variável de nível de bloco fora do escopo do bloco.

Conclusão

Uma variável declarada dentro do escopo do método estará acessível apenas dentro do método e uma variável declarada dentro do escopo do bloco será acessível no escopo do bloco. Não podemos acessar uma variável antes de sua declaração e acessar as variáveis ​​fora do escopo resultarão em um erro. Este artigo apresenta um guia abrangente para o escopo de variáveis ​​e métodos em Java.