类变量被类的所有对象所共享,它与类方法相关联。对一个给定的类来说,类变量只存在一份拷贝,相当于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
测试结果:
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。