Mega Code Archive

 
Categories / VB.Net Tutorial / Language Basics
 

Demonstrates scope rules and instance variables

Public Class Tester    ' instance variable can be used anywhere in class    Dim Shared value As Integer = 1    ' demonstrates class scope and block scope    Public Shared Sub Main       Dim value As Integer = 5       Console.WriteLine("local variable value in" & _          " FrmScoping_Load is " & value )       MethodA() ' MethodA has automatic local value       MethodB() ' MethodB uses instance variable value       MethodA() ' MethodA creates new automatic local value       MethodB() ' instance variable value retains its value       Console.WriteLine("local variable " & _          "value in FrmScoping_Load is " & value )    End Sub     ' automatic local variable value hides instance variable    Shared Sub  MethodA()       Dim value As Integer = 25 ' initialized after each call       Console.WriteLine("local variable " & _          "value in MethodA is " & value & " after entering MethodA" )       value += 1       Console.WriteLine("local variable " & _          "value in MethodA is " & value & " before exiting MethodA" )    End Sub     ' uses instance variable value    Shared Sub  MethodB()       Console.WriteLine("instance variable" & _          " value is " & value & " after entering MethodB" )       value *= 10       Console.WriteLine("instance variable " & _          "value is " & value & " before exiting MethodB" )    End Sub End Class local variable value in FrmScoping_Load is 5 local variable value in MethodA is 25 after entering MethodA local variable value in MethodA is 26 before exiting MethodA instance variable value is 1 after entering MethodB instance variable value is 10 before exiting MethodB local variable value in MethodA is 25 after entering MethodA local variable value in MethodA is 26 before exiting MethodA instance variable value is 10 after entering MethodB instance variable value is 100 before exiting MethodB local variable value in FrmScoping_Load is 5