Published
Last modified
Java - Global e Local - Entendendo STATIC
Sempre que programamos devemos levar em conta como nosso próprio programa irá acessar os dados que ele mesmo produz. Isso é o simples entendimento e visualização da diferença entre o que é local e o que é global.
Local é qualquer tipo de dado que só pode ser acessado em seu próprio contexto. Por exemplo, uma variável dentro da função principal (main) só pode ser acessada pela função main.
Global é qualquer tipo de dado que pode ser acessado diretamente de qualquer contexto dentro da classe inteira. Por exemplo, podemos declarar uma variável como sendo da classe e criarmos também outras três funções que podem acessar essa mesma variável diretamente, pois ela é global e não pertence a nenhuma das três funções especificamente.
Portanto, sempre usamos a palavra reservada static para indicar que algo (função, método, variável, etc.) é global e pode ser acessado diretamente por todos os elementos de uma classe.
Para exemplificar de uma maneira bem simples e direta, no código abaixo há três variáveis: duas declaradas no corpo da classe e uma declarada na função main.
public class GlobalELocal { static int x; float y; public static void main(String args[]) { char z; x = 1; z = 'a'; } }
Traduzindo o código acima, a regra é a seguinte:
- Quando o código é executado, a função main é chamada;
- Dentro da função main podemos atribuir um valor para x, porque x é um inteiro marcado como global (static) e pode ser acessado de qualquer lugar.
- y não pode ser modificado dentro da função main, pois ele só pertence a classe GlobalELocal.
- z só pode ser modificado dentro da função main, e não pode ser modificado na classe GlobalELocal.
Java - Global e Local - Entendendo STATIC by Denys Xavier is licensed under a Creative Commons Attribution 4.0 International License.