Ruby class变量 VS class实例变量 VS实例变量_Ruby_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > Ruby > Ruby class变量 VS class实例变量 VS实例变量

Ruby class变量 VS class实例变量 VS实例变量

 2010/12/5 13:14:08  fuliang  http://fuliang.javaeye.com  我要评论(0)
  • 摘要:#!/usr/bin/rubyclassA@@a="a"#aclassvariable@b="a"#aclassinstancevariableattr_accessor:cdefinitialize(c)@c=c#aninstancevariableendclass<<selfattr_accessor:benddefself.greetingputs@@aputs@bendendclassB<A@@a="b"@b="b"endA.greeting#=>baB
  • 标签:Ruby 实例 class实例变量 实例变量 class变量
#!/usr/bin/ruby

class A
    @@a = "a" # a class variable
    @b = "a" #a class instance variable
    
    attr_accessor :c

    def initialize(c)
        @c = c # an instance variable
    end
    
    class << self
        attr_accessor :b
    end

    def self.greeting
        puts @@a
        puts @b
    end

    
end

class B < A
    @@a = "b"
    @b = "b"
end

A.greeting #=> b a
B.greeting #=> b b
puts A.b
puts A.new('c').c

class变量 当前类及其子类共享
class实例变量 所有实例共享
实例变量 class new出的实例独享
发表评论
用户名: 匿名