--- methods([inherited_too])
--- public_methods([inherited_too])

    Υ֥ȤǤpublic᥽å̾ΰȤ
    ֤ޤ

    ruby 1.8 feature: Ǥ褦ˤʤޤ
    inherited_too Ǥ(ǥեȤϿ)ѡ饹
    줿᥽åɤоݤˤʤޤ

        class Foo
          private;   def private_foo()   end
          protected; def protected_foo() end
          public;    def public_foo()    end
        end

        class Bar < Foo
        end

        p Bar.new.methods           - Object.new.methods
        p Bar.new.public_methods    - Object.new.public_methods
        p Bar.new.private_methods   - Object.new.private_methods
        p Bar.new.protected_methods - Object.new.protected_methods
        => ["public_foo"]
           ["public_foo"]
           ["private_foo"]
           ["protected_foo"]

    Module#instance_methods [Module/instance_methods],
    Module#public_instance_methods [Module/public_instance_methods],
    ⻲ȤƤ

    ruby 1.7 feature: methods ϡprotected ᥽åɤޤߤޤ

        class Foo
          private;   def private_foo()   end
          protected; def protected_foo() end
          public;    def public_foo()    end
        end

        p Foo.new.methods - Object.new.methods
        # => ["public_foo", "protected_foo"]
        # 1.6 Ǥϡ["public_foo"]

