Ruby 中的dot和::

class A

   class B

    C=3

   end

  def f

  end

  def self.static_f

  end

end

 

puts A::B::C      # 3

A.new.f

A.B.C # 出错 A中没有 B 方法

A.static_f

 

这说明 Ruby中 dot 只能用于(类或对象的)成员函数调用, ::能用于常量(class 也是常量)访问和 类的成员函数的调用。

dot 应该表示的一种成员关系, :: 更多当成 名字空间 来 用 。

posted @ 2009-11-26 11:44  napoleon_liu  阅读(177)  评论(0编辑  收藏  举报