阅读量:2
在Ruby中,类变量(Class Variables)是属于类的变量,而不是属于类的实例(对象)。它们以两个下划线(__)开头和结尾,例如:@@variable_name。类变量在整个类及其所有实例之间共享,这意味着对类变量的任何更改将影响所有实例。
类变量通常用于存储所有实例共享的数据,例如类的版本号、描述或其他全局设置。与实例变量不同,实例变量(以@开头)仅在特定实例中存储数据,不会影响其他实例。
以下是一个关于Ruby类变量的示例:
class MyClass
@@variable_name = "Shared Data"
def self.display_variable
puts @@variable_name
end
def initialize
@instance_variable = "Instance Data"
end
end
# 访问类变量
MyClass.display_variable # 输出 "Shared Data"
# 创建类的实例
instance1 = MyClass.new
instance2 = MyClass.new
# 通过实例访问类变量
instance1.display_variable # 输出 "Shared Data"
instance2.display_variable # 输出 "Shared Data"
# 更改类变量
MyClass.@@variable_name = "Updated Shared Data"
# 再次访问类变量
instance1.display_variable # 输出 "Updated Shared Data"
instance2.display_variable # 输出 "Updated Shared Data"
在这个示例中,我们定义了一个名为MyClass的类,其中包含一个类变量@@variable_name和一个实例变量@instance_variable。我们可以通过类名直接访问类变量,也可以通过类的实例访问类变量。当我们更改类变量时,所有实例中的类变量值都会更新。
以上就是关于“Ruby类变量有何作用”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm