读书人

Ruby等等定义

发布时间: 2012-11-20 09:55:43 作者: rapoo

Ruby之类定义

介绍几种不常见的类定义方法:

?

1. Struct

?

?

2. Class.new

我们是怎么定义一个类的?

?

module Mod          def attr_reader(*syms)                   syms.each do |sym|                      instance_eval %{                              def #{sym}                                    @#{sym}                            end}                    end            end    end      class A          extend Mod           attr_reader :name          @name = "jinbin"          def initialize          end   end    puts A.name
由于class_eval生成的是实例方法,instance_eval生成的是类方法,所以调用上有所区别,在代码中都有体现。此处可以细细深究一下,注意self的值。

?

读书人网 >Ruby Rails

热点推荐