Ruby 类变量

Stewart Nguyen 2022年5月18日
Ruby 类变量

全局变量、实例变量、类变量、局部变量和常量是 Ruby 支持的五种变量类型。本文将重点介绍 Ruby 中的类变量。

在 Ruby 中创建类变量

类变量以@@ 开头。与其他变量一样,必须先定义类变量才能使用它们。

此示例演示使用 Ruby 2.7.2 版创建类变量。

例子:

class Foo
  @@var_1 = 1

  def show_class_variable
    "Value of @@var_1: #{@@var_1}"
  end

  def increase_value
    @@var_1 += 1
  end
end

Foo.new.show_class_variable

输出:

"Value of @@var_1: 1"

类的所有实例共享一个类变量的值。如果一个对象修改了类变量,则该值将应用于同一类的所有对象。

参考下面的情况,它使用了 Foo 类。

例子:

foo_1 = Foo.new
foo_2 = Foo.new

foo_1.show_class_variable
=> "Value of @@var_1: 1" #Output

foo_2.show_class_variable
=> "Value of @@var_1: 1" #Output

foo_1.increase_value
foo_2.show_class_variable
=> "Value of @@var_1: 2" #Output

相关文章 - Ruby Variable