在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
1.ruby的全局变量的概念和Java的全局变量的概念不同, ruby的全局变量是以$符号开头的,如果给全局变量的初始化值为nil会出现警告。 赋值给全局变量,这是ruby不推荐的,这样会使程序变得很难理解。 举例: #!/usr/bin/ruby $global_variable = 10 class Class1 def print_global puts "Global variable in Class1 is #$global_variable" end end class Class2 def print_global puts "Global varible in Class2 is #$global_variable" end end
class1obj = Class1.new class1obj.print_global class2obj = Class2.new class2obj.print_global #statement of the ruby code will print: =begin Global varible in Class1 is 10 Global varible in Class2 is 10 =end 2.实例变量以@开头,未初始化的实例变量的值为nil并且会出现警告。 class Customer def initialize(id ,name, addr) @cust_id = id @cust_name = name @cust_addr = addr end def display_detail() puts "Customer id is #@cust_id" puts "Customer name is #@cust_name" puts "Customer addr is #@cust_addr" end end 其中的@cust_id,@cust_name,@cust_addr都是实例变量。 3.类变量,类变量是以@@开头,必须在方法使用它之前,给它初始化。 引用一个没有被初始化的类变量,就会产生错误。类变量会被其子类和module所共享。 4.局部变量,以小写字母开头或者_.开头。当一个没有初始化的局部变量被引用,它被解释成 调用了一个没有参数的方法。 5.常量,常量以首字母大写,一般习惯全大写。常量定义在class或者module中,在类的范围内 都可以被访问。定义在class或者module之外,就可以全局访问了。常量不能定义在方法内。 引用未初始化的常量会出现错误,如果修改一个已经初始化的常量会出现警告。 #!/usr/bin/ruby class Example VAR1 = 100 VAR2 = 200 def show puts "Value of first Costant is #{VAR1}" puts "Value of second Constant is #{VAR2}" end end #Create Objects object = Example.new() object.show #will outputs Value of first Constant is 100 Value of second Constant is 200
|
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论