Escopos Local & Global
O escopo de uma variável é a parte do código onde podemos acessar essa variável. Em C#, existe um escopo global e muitos escopos locais possíveis.
Quando criamos uma variável fora de qualquer método, ela pode ser acessada de quase qualquer lugar no programa, portanto, diz-se que ela tem escopo global. Por exemplo:
main.cs
Nota
Ao criar uma variável fora de qualquer método, precisamos adicionar a palavra-chave
static
antes da declaração.
No código acima, conseguimos acessar a variável myVariable
tanto no método Main
quanto no testMethod
. Entretanto, isso nem sempre acontece.
Uma variável declarada dentro de um bloco de código está disponível apenas dentro desse bloco de código e seus sub-blocos de código, se houver. Por exemplo, uma variável declarada dentro de um método só estará diretamente acessível dentro desse mesmo método. Da mesma forma, uma variável declarada dentro de um bloco if
, else if
ou else
só será acessível dentro desse bloco. Diz-se então que tal variável possui um escopo local.
Examinar o seguinte código é um bom exercício para a leitura de códigos e tentar entendê-lo:
main.cs
No código acima existem quatro variáveis:
variable_1
- Escopo Global;variable_2
- Escopo Local, definido no método Principal;variable_3
- Escopo Local, definido no blocoif
;variable_4
- Escopo Local, definido no métodomyMethod
;
O programa acima pode não compilar, mas demonstra onde certas variáveis podem ser acessadas e onde não podem. A área do código onde uma variável pode ser acessada é chamada de escopo dessa variável.
variable_1
é uma variável global, então ela é acessível quase em todos os lugares;variable_2
é acessível em todo o métodoMain
, incluindo sub-blocos como a condiçãoif
;variable_3
é acessível somente dentro do blocoif
;variable_4
é acessível somente dentro do blocomyMethod
;
Tudo estava claro?
Conteúdo do Curso
C# Basics
2. Tratando com Tipos de Dados
C# Basics
Escopos Local & Global
O escopo de uma variável é a parte do código onde podemos acessar essa variável. Em C#, existe um escopo global e muitos escopos locais possíveis.
Quando criamos uma variável fora de qualquer método, ela pode ser acessada de quase qualquer lugar no programa, portanto, diz-se que ela tem escopo global. Por exemplo:
main.cs
Nota
Ao criar uma variável fora de qualquer método, precisamos adicionar a palavra-chave
static
antes da declaração.
No código acima, conseguimos acessar a variável myVariable
tanto no método Main
quanto no testMethod
. Entretanto, isso nem sempre acontece.
Uma variável declarada dentro de um bloco de código está disponível apenas dentro desse bloco de código e seus sub-blocos de código, se houver. Por exemplo, uma variável declarada dentro de um método só estará diretamente acessível dentro desse mesmo método. Da mesma forma, uma variável declarada dentro de um bloco if
, else if
ou else
só será acessível dentro desse bloco. Diz-se então que tal variável possui um escopo local.
Examinar o seguinte código é um bom exercício para a leitura de códigos e tentar entendê-lo:
main.cs
No código acima existem quatro variáveis:
variable_1
- Escopo Global;variable_2
- Escopo Local, definido no método Principal;variable_3
- Escopo Local, definido no blocoif
;variable_4
- Escopo Local, definido no métodomyMethod
;
O programa acima pode não compilar, mas demonstra onde certas variáveis podem ser acessadas e onde não podem. A área do código onde uma variável pode ser acessada é chamada de escopo dessa variável.
variable_1
é uma variável global, então ela é acessível quase em todos os lugares;variable_2
é acessível em todo o métodoMain
, incluindo sub-blocos como a condiçãoif
;variable_3
é acessível somente dentro do blocoif
;variable_4
é acessível somente dentro do blocomyMethod
;
Tudo estava claro?