ruby的类变量和实例变量
发表于:2024-11-24 作者:热门IT资讯网编辑
编辑最后更新 2024年11月24日,类变量被类的所有对象所共享,它与类方法相关联。对一个给定的类来说,类变量只存在一份拷贝,相当于C++类中的静态变量(关键词:@@&static)。类变量由两个@符开头,例如@@count。与全局变量和
类变量被类的所有对象所共享,它与类方法相关联。对一个给定的类来说,类变量只存在一份拷贝,相当于C++类中的静态变量(关键词:@@&static)。类变量由两个@符开头,例如@@count。与全局变量和实例变量不同,类变量在使用之前必须被初始化。通常,初始化就是在类定义中的简单赋值。
举一例子:
- class Apple
- @@number = 0 # 苹果个数
- def initialize(color)
- @color = color
- @number = 0
- end
- def add
- @number += 1
- @@number += 1
- puts "This type apple: #@umber. All type apple: #@@number"
- end
- end
测试代码:
- redApple = Apple.new("red")
- greenApple = Apple.new("green")
- redApple.add
- greenApple.add
- redApple.add
- redApple.add
测试结果: