Global Variable has global scope and accessible from anywhere in the program. Assigning to global variables from any point in the program has global implications. Global variable are always prefixed with a dollar sign ($). If we want to have a single variable, which is available across classes, we need to define a global variable. By default, an uninitialized global variable has a nil value and its use can cause the programs to be cryptic and complex. Global variable can be change anywhere in program.
Syntax :
Ruby
Output :
Ruby
Output :
$global_variable = 5Example :
# Ruby Program to understand Global Variable
# global variable
$global_variable = 10
# Defining class
class Class1
def print_global
puts "Global variable in Class1 is #$global_variable"
end
end
# Defining Another Class
class Class2
def print_global
puts "Global variable in Class2 is #$global_variable"
end
end
# Creating object
class1obj = Class1.new
class1obj.print_global
# Creating another object
class2obj = Class2.new
class2obj.print_global
Global variable in Class1 is 10 Global variable in Class2 is 10In above example, a global variable define whose value is 10. This global variable can be access anywhere in the program. Example :
# Ruby Program to understand global variable
$global_variable1 = "GFG"
# Defining Class
class Author
def instance_method
puts "global vars can be used everywhere. See? #{$global_variable1}, #{$another_global_var}"
end
def self.class_method
$another_global_var = "Welcome to GeeksForGeeks"
puts "global vars can be used everywhere. See? #{$global_variable1}"
end
end
Author.class_method
# "global vars can be used everywhere. See? GFG"
# => "global vars can be used everywhere. See? GFG"
Author = Author.new
Author.instance_method
# "global vars can be used everywhere. See?
# GFG, Welcome to GeeksForGeeks"
# => "global vars can be used everywhere. See?
# GFG, Welcome to GeeksForGeeks"
global vars can be used everywhere. See? GFG global vars can be used everywhere. See? GFG, Welcome to GeeksForGeeksIn above example, We define two global variable in a class. we create a object of class Author than call method.