小编pur*_*bon的帖子

动态添加ruby类方法或实例方法

我是Ruby的新手,所以还在学习.我正在研究如何动态添加方法,我成功创建了实例方法,但在创建类方法时却没有成功.

这就是我生成实例方法的方法:

  class B
    def before_method
      puts "before method"
    end

    def self.run(method)
        send :define_method, method do
          before_method
          puts "method #{method}"
        end
    end
  end

  class A < B
    run :m
    run :n
  end
Run Code Online (Sandbox Code Playgroud)

有关创建静态方法的最佳方法的任何想法?

我的最后一项任务是寻找为类方法创建"之前"和"之后"任务的最佳方法.

ruby metaprogramming class instance

10
推荐指数
3
解决办法
2万
查看次数

标签 统计

class ×1

instance ×1

metaprogramming ×1

ruby ×1